メモリ階層と性能

L1キャッシュのヒット時間が1 ns、ミス率が5%、L2キャッシュのヒット時間が10 ns、L2のローカルミス率が20%、主記憶のアクセス時間が100 nsのとき、平均メモリアクセス時間はいくらか。

  1. A2.0 ns
  2. B2.5 ns
  3. C6.0 ns
答えと解説を見る

正解:B. 2.5 ns

L1のミスペナルティは、L2の平均アクセス時間 10 + 0.2 × 100 = 30 nsです。よって平均メモリアクセス時間は 1 + 0.05 × 30 = 1 + 1.5 = 2.5 nsになります。2.0 nsはL2のヒット時間10 nsを足し忘れ、1 + 0.05 × (0.2 × 100)とした値です。6.0 nsは主記憶の100 nsにL1のミス率を直接掛けて足した値で、L2の効果を無視しています。

  • A. 2.0 nsはL2のヒット時間を足し忘れた値です。
  • B. 正しい。1 + 0.05 × (10 + 0.2 × 100) = 2.5 nsです。
  • C. 6.0 nsはL2を無視して主記憶の時間を掛けた値です。
この分野を解く 分野ページへ

メモリ階層と性能のほかの問題

  1. ダイレクトマップ方式のキャッシュで、2つの配列の要素が同じキャッシュの位置に対応し、交互にアクセスするたびに互いを追い出し合っている。このミスの分類はどれか。
  2. プログラムがあるデータに初めてアクセスしたときに起こるキャッシュミスを減らす方法として、効果があるものはどれか。
  3. キャッシュをフルアソシアティブ方式にしても減らないミスとして正しいものはどれか。
  4. キャッシュのラインサイズを大きくしたときの影響として正しいものはどれか。
  5. ライトスルー方式のキャッシュで、書き込みバッファを設ける主な目的はどれか。