Upgrade to Pro — share decks privately, control downloads, hide ads and more …

キャッシュメモリ

 キャッシュメモリ

以下動画のテキストです
https://youtu.be/xVdF1z7eSDI

Satoru Takeuchi

June 21, 2020
Tweet

More Decks by Satoru Takeuchi

Other Decks in Technology

Transcript

  1. もくじ • キャッシュメモリとは • 具体例( AMD Ryzen 5 PRO 2400GE)

    • Linuxからキャッシュメモリの情報を見る • まとめ
  2. もくじ • キャッシュメモリとは • 具体例( AMD Ryzen 5 PRO 2400GE)

    • Linuxからキャッシュメモリの情報を見る • まとめ
  3. 背景 • コンピュータは以下の処理を繰り返す装置 1. メモリからCPUのレジスタにデータをとってくる 2. レジスタ上で計算する 3. 計算結果をメモリに書き戻す •

    メモリアクセスはレジスタ上の計算に比べてはるかに遅い 1. レジスタ上の計算: 数ナノ秒オーダー 2. メモリアクセス: 100ナノ秒オーダー • 問題: CPUの計算速度をいくら上げてもメモリアクセスがボトルネックになってシス テム全体の性能が上がらない
  4. キャッシュメモリ存在時のメモリライト • CPU メモリ レジスタ キャッシュメモリ アドレス100のデータ レジスタ上のデータを 書き換えて メモリアドレス100に

    書き込み アドレス100のデータ アドレス100のデータ この後のリードは キャッシュメモリ上のデータを 見ればいい
  5. キャッシュメモリ上データのメモリ上への反映 • CPU メモリ レジスタ キャッシュメモリ アドレス100のデータ アドレス100のデータ アドレス100のデータ 二つの方法がある

    • ライトバック ◦ プログラムからのデータアクセス とは非同期にバックグラウンドで 反映 • ライトスルー ◦ キャッシュメモリへの書き込みと 同時にメモリへの書き込み
  6. キャッシュメモリあれこれ • データがすべてキャッシュメモリ上におさまっている限り、見かけ上のメモリアクセス 速度はキャッシュメモリへのアクセス速度に等しくなる • キャッシュの様々な特徴 ◦ メモリへのデータ反映方法 : ライトスルー

    or ライトバック ◦ 階層構造: L1キャッシュ(一番高速)、L2キャッシュ(二番目に高速)、... ◦ キャッシュの種類: 命令用キャッシュとデータ用キャッシュに分かれることもある ◦ CPU内のコア間でのキャッシュメモリ共有の有無 • 上記特徴はCPUの種類によって異なる
  7. もくじ • キャッシュメモリとは • 具体例(AMD Ryzen 5 PRO 2400GE) •

    Linuxからキャッシュメモリの情報を見る • まとめ
  8. カタログスペック • 論理CPU ◦ 4コア8スレッド • キャッシュ ◦ L1キャッシュ合計: 384KB

    ◦ L2キャッシュ合計: 2MB ◦ L3キャッシュ合計: 4MB • 公式サイト ◦ https://www.amd.com/ja/products/apu/amd-ryzen-5-pro-2400ge
  9. 実例: AMD Ryzen 5 PRO 2400GE CPU コア0 コア2 コア3

    コア1 スレッド0 スレッド1 スレッド2 スレッド3 スレッド4 スレッド5 スレッド6 スレッド7 L1キャッシュ L2キャッシュ L1キャッシュ L2キャッシュ L1キャッシュ L2キャッシュ L1キャッシュ L2キャッシュ L3キャッシュ
  10. 答え合わせ • 論理CPU ◦ 4コア8スレッド • キャッシュ ◦ L1キャッシュ合計: 384KB:

    (L1dキャッシュ32KB + L1iキャッシュ64KB) * 4コア ◦ L2キャッシュ合計: 2MB: 512KB * 4コア ◦ L3キャッシュ合計: 4MB: 全コアで共有
  11. もくじ • キャッシュメモリとは • 具体例(AMD Ryzen 5 PRO 2400GE) •

    Linuxからキャッシュメモリの情報を見る • まとめ