linux - Intel i7 (Ivy Bridge) 上的 PMU 缓存事件

标签 linux performance x86-64 oprofile

我正在使用 Oprofile 来分析一些基准测试,我正在专门寻找缓存问题。我使用英特尔 SDM 第 3 卷(从 2013 年 3 月开始)作为选择要监视的事件的指南......但这很痛苦......

我做实验的计算机是i7 3630QM(即Ivy Bridge),所以在手册中我查看表19-1和19-5,问题是:我应该使用哪些事件来测量L1{D,I}缓存事件? L3(有限责任公司)怎么样?真诚地,表19-5的事件描述比习惯上的更模糊。

我的系统是Ubuntu 13.04。

最佳答案

使用perf list 获取支持的事件及其perf 名称的列表。您将看到可以使用的诸如 L1-dcache-loadsLLC-load-misses 之类的事件。

仅供引用,新的微体系结构通常需要一段时间才能将其纳入内核中的 perf 中,而该内核版本则需要一段时间才能将其纳入发行版中,因此,如果您使用的是 Ubuntu 12.04 LTS 的默认内核,则可能会出现您的内核无法识别Ivy Bridge的情况。

关于linux - Intel i7 (Ivy Bridge) 上的 PMU 缓存事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18581005/

相关文章:

python - 在 OSX 10.14.5 上安装 clickhouse-cityhash 时缺少指令 `_mm_crc32_u64`

c - 执行 objdump 时没有堆栈或堆

linux - 在装有 linux 的系统上检测网卡和端口

linux - Bash - 等待超时

java - 导入类和使用具有完整类名的引用之间是否有任何性能或内存改进?

c - 将 128 位寄存器从汇编传递给 C 函数

linux - 如何在 Linux 服务器上从 Apache SVN 归档旧版本

c# - Unity3D - GameObject.Find() vs Inspector 分配性能

MySQL LEFT JOIN 两个嵌套表的性能

assembly - 为什么使用push/pop而不是sub和mov?