linux perf工具如何获取l2缓存的未命中率?

linux perf工具如何获取l2缓存的未命中率?

我想使用 perf 工具来获取二级缓存的未命中率。我知道如何获得 L1 和 LLC。

perf stat -e L1-dcache-loads,L1-dcache-load-misses,L1-dcache-stores command

perf stat -e LLC-loads,LLC-load-misses,LLC-stores,LLC-prefetches command

以上两条命令可以得到l1和的未命中率llc。但是当我使用时perf stat -e L2cache-loads, L2-cache-load-misses, L2-cache-stores commandan event syntax error:'L2-cache-loads'出现错误。

如何获取L2的未命中率?

当我用来perf stat -e L1-dcache-loads, L1-dcache-load-misses, L1-dcache-stores command获取l1的未命中率时,结果是:

    19,405,514,800      L1-dcache-loads                                               (50.00%)
           956,038      L1-dcache-load-misses     #    0.00% of all L1-dcache hits    (66.67%)
     6,448,520,298      L1-dcache-stores                                              (66.67%)
           311,629      LLC-loads                                                     (66.67%)
           174,237      LLC-load-misses           #   55.91% of all LL-cache hits     (66.67%)
            72,755      LLC-stores                                                    (33.33%)
   <not supported>      LLC-prefetches

      54.586246766 seconds time elapsed

右边的0.0%, 55.91%和代表什么?(50.00%), (66.67%), (66.67%), (66.67%), (66.67%), and (33.33%)

答案1

我认为相关事件是l2_rqsts.all_demand_miss。 (perf list将向您显示所有可用的事件。)

从百分比来看,956,038 为 19,405,514,800 的 0.00%,174,237 为 311,629 的 55.91% —IE0% 的 L1 dcache 负载未命中,55.91% 的 LLC dcache 负载未命中。我不知道右边的百分比。

相关内容