PAPI_L1_LDM
papi 和L1-dcache-load-misses
perf有什么区别?
我使用了相同的设置,就像这里的这篇文章。
所以,结果我得到了 papi:
PAPI_L1_DCM: 515 <- L1 data cache miss (probably L1D_READ_MISSES_ALL + L1D_READ_MISSES_RETRIED?)
PAPI_L1_ICM: 300 <- L1 Instruction cache miss
PAPI_L1_LDM: 441 <- L1 Load data miss
PAPI_L1_TCM: 815 <- L1 Total cache miss
不幸PAPI_L1_DCA
的是,这台机器不支持。
对于 perf(仅在用户空间,因为 papi 也仅测量用户空间而没有内核空间):调用:perf stat -B -e L1-dcache-load-misses:u,cache-misses:u ./perf
16,539 L1-dcache-load-misses
128 cache-misses:u
16,539 似乎更合理N=1000000
。加载数据未命中(papi 中的 PAPI_L1_LDM)和数据缓存未命中(papi 中的 PAPI_L1_DCM)有什么区别?为什么这些数字在 papi 和 perf 中不同?性能是否cache-misses:u
与 L2 缓存未命中有关?
编辑:硬件(Xeon E5-2600 v3 系列,Haswell-EP 12 核)