1. ホーム
  2. memory

[解決済み] 各種キャッシュやメインメモリにアクセスするためのコストの目安は?

2022-04-20 01:12:30

質問

Intel i7プロセッサでL1、L2、L3キャッシュとメインメモリにアクセスするおおよその時間(ナノ秒単位)を教えてください。

これは特にプログラミングの質問ではありませんが、この種の速度の詳細を知ることは、低遅延プログラミングの課題にとって必要なことなのです。

どのように解決するのですか?

パフォーマンス分析ガイドはこちら i7およびXeonプロセッサーのシリーズを対象としています。例えば、22ページのタイミングとサイクルをチェックしてみてください。

さらに このページ には、クロックサイクルなどについての詳細があります。2つ目のリンク先では、以下のような数値が表示されました。

Core i7 Xeon 5500 Series Data Source Latency (approximate)               [Pg. 22]

local  L1 CACHE hit,                              ~4 cycles (   2.1 -  1.2 ns )
local  L2 CACHE hit,                             ~10 cycles (   5.3 -  3.0 ns )
local  L3 CACHE hit, line unshared               ~40 cycles (  21.4 - 12.0 ns )
local  L3 CACHE hit, shared line in another core ~65 cycles (  34.8 - 19.5 ns )
local  L3 CACHE hit, modified in another core    ~75 cycles (  40.2 - 22.5 ns )

remote L3 CACHE (Ref: Fig.1 [Pg. 5])        ~100-300 cycles ( 160.7 - 30.0 ns )

local  DRAM                                                   ~60 ns
remote DRAM                                                  ~100 ns

EDIT2 :

最も重要なのは、引用表の下にある通知で、こうある。

<サブ 注:これらの値は大まかな目安です。 によって異なります。 コアとアンコアの周波数、メモリ速度、バイオスの設定。 ディムの数 ETC、ETC... あなたのマイレージは変わるかもしれません。 "

編集:タイミング/サイクル情報だけでなく、上記のインテルのドキュメントでは、i7とXeonプロセッサーのシリーズについて(パフォーマンスの観点から)より多くの(非常に)有用な詳細を扱っていることを強調しておく。