linux 性能缓存未命中事件的定义?
definition of linux perf cache-misses event?
我正在尝试使用 linux perf 来分析缓存性能。
perf list 显示存在缓存未命中事件。但是,这个 "cache-misses" 事件的定义是什么?
是L1D/L1i缓存、二级缓存还是三级缓存中的一种?
谢谢!
cache-misses
事件对应于末级缓存 (LLC) 中的未命中。请注意,这是一个体系结构性能监视事件,应该在微体系结构中表现一致。
这个可以从源码中验证 - cache-misses
十六进制的前2位0x412e指的是umask(41),后2位指的是事件-select(2e).
来自英特尔软件开发人员手册(查看性能监控章节)
最后一级缓存未命中 - 事件 select 2EH,Umask 41H
"This event counts each cache miss condition for references to the last level on-die cache. The event count may include speculation and cache line fills due to the first-level cache hardware prefetcher, but may exclude cache line fills due to other hardware-prefetchers."
我正在尝试使用 linux perf 来分析缓存性能。
perf list 显示存在缓存未命中事件。但是,这个 "cache-misses" 事件的定义是什么?
是L1D/L1i缓存、二级缓存还是三级缓存中的一种?
谢谢!
cache-misses
事件对应于末级缓存 (LLC) 中的未命中。请注意,这是一个体系结构性能监视事件,应该在微体系结构中表现一致。
这个可以从源码中验证 - cache-misses
十六进制的前2位0x412e指的是umask(41),后2位指的是事件-select(2e).
来自英特尔软件开发人员手册(查看性能监控章节)
最后一级缓存未命中 - 事件 select 2EH,Umask 41H
"This event counts each cache miss condition for references to the last level on-die cache. The event count may include speculation and cache line fills due to the first-level cache hardware prefetcher, but may exclude cache line fills due to other hardware-prefetchers."