Intel(R) Core(TM) i7-4720HQ CPU @ 2.60GHz
( Haswell
) プロセッサーを持っています。AFAIK, , は、 DRAM (つまり) のデータ読み取りアクセスmem_load_uops_retired.l3_miss
数をカウントします。は、その名前が示すように、DRAM を対象としたデータ読み取りの数をカウントします。したがって、これら 2 つのイベントは同等(または少なくともほぼ同じ) のように見えます。ただし、次のベンチマークに基づくと、前者のイベントは後者よりもはるかに頻度が低くなります。demand
non-prefetch
offcore_response.demand_data_rd.l3_miss.local_dram
demand
1) ループ内で 1000 要素のグローバル配列を初期化するC
:
Performance counter stats for '/home/ahmad/Simple Progs/loop':
1,363 mem_load_uops_retired.l3_miss
1,543 offcore_response.demand_data_rd.l3_miss.local_dram
0.000749574 seconds time elapsed
0.000778000 seconds user
0.000000000 seconds sys
2) Evince で PDF ドキュメントを開く:
Performance counter stats for '/opt/evince-3.28.4/bin/evince':
936,152 mem_load_uops_retired.l3_miss
1,853,998 offcore_response.demand_data_rd.l3_miss.local_dram
4.346408203 seconds time elapsed
1.644826000 seconds user
0.103411000 seconds sys
3) Wireshark を 5 秒間実行します。
Performance counter stats for 'wireshark':
5,161,671 mem_load_uops_retired.l3_miss
8,126,526 offcore_response.demand_data_rd.l3_miss.local_dram
15.713828395 seconds time elapsed
0.904280000 seconds user
0.693906000 seconds sys
4) Inkscape で画像にぼかしフィルターを実行する:
Performance counter stats for 'inkscape':
13,852,121 mem_load_uops_retired.l3_miss
23,475,970 offcore_response.demand_data_rd.l3_miss.local_dram
25.355643897 seconds time elapsed
7.244404000 seconds user
1.019895000 seconds sys
4つのベンチマークすべてoffcore_response.demand_data_rd.l3_miss.local_dram
で、は のほぼ2 倍の頻度mem_load_uops_retired.l3_miss
です。これは合理的ですか?なんで?ベンチマークが複雑すぎて粗い場合は教えてください。