我正在尝试使用perf工具来衡量某些程序的性能。 出于某种原因,perf stat不支持硬件缓存事件。 我正在使用intel xeon e5-2620(haswell)处理器。 我在一些论坛中读到,这个cpu的事件代码可能已被更改,这就是perf不支持这些事件的原因。 我尝试使用perfmon2来查找原始事件,但没有运气。 有谁知道如何为这个cpu找到硬件缓存事件的正确原始事件? 我对L1-dcache-loads和L1-dcache-store特别感兴趣,但通用解决方案会更好。 我使用的是Linux 3.0.101-0.47.52-default版本。
答案 0 :(得分:0)
我在intel开发者论坛上得到了一些帮助 https://software.intel.com/en-us/forums/topic/563469
事件是: L1数据高速缓存加载(事件0xD0,Umask 0x81) L1数据高速缓存存储(事件0xD0,Umask 0x82)