微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Perf:缓存未命中未映射到 AMD 系列 17h 处理器

如何解决Perf:缓存未命中未映射到 AMD 系列 17h 处理器

我正在尝试使用 Linux 内核 5.4.80 在 AMD Epyc 处理器上测量一些代码性能

# lscpu
Architecture:                    x86_64
cpu op-mode(s):                  32-bit,64-bit
Byte Order:                      Little Endian
Address sizes:                   48 bits physical,48 bits virtual
cpu(s):                          128
On-line cpu(s) list:             0-127
Thread(s) per core:              2
Core(s) per socket:              64
Socket(s):                       1
NUMA node(s):                    1
vendor ID:                       AuthenticAMD
cpu family:                      23
Model:                           49
Model name:                      AMD EPYC 7702P 64-Core Processor
Stepping:                        0
Frequency boost:                 enabled
cpu MHz:                         1597.858
cpu max MHz:                     2000.0000
cpu min MHz:                     1500.0000
BogoMIPS:                        3992.43
Virtualization:                  AMD-V
L1d cache:                       2 MiB
L1i cache:                       2 MiB
L2 cache:                        32 MiB
L3 cache:                        256 MiB
...
#

事实证明,某些事件并未直接映射到硬件事件,而是 mapped to generic hardware events

例如,当我运行 perf stat -e cache-misses ... 时,它会报告什么?我对这些报告值的信任程度如何?它们实际上代表什么?

就我而言,我最好使用原始计数器值而不是依赖 perf 名称吗?

谢谢。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。