メモリ階層と性能

キャッシュのヒット時間が2サイクル、ミス率が4%、ミスペナルティが150サイクルのとき、平均メモリアクセス時間は何サイクルか。

  1. A8サイクル
  2. B6サイクル
  3. C152サイクル
答えと解説を見る

正解:A. 8サイクル

平均メモリアクセス時間 = ヒット時間 + ミス率 × ミスペナルティ = 2 + 0.04 × 150 = 2 + 6 = 8サイクルです。ヒット時間はすべてのアクセスでかかり、ミスしたときだけミスペナルティが加わると考えます。6サイクルはミスの分だけを計算してヒット時間を足し忘れた値です。152サイクルはミスしたアクセス1回にかかる時間で、平均ではありません。ミス率がわずか4%でも、平均が4倍になることが分かります。

  • A. 正しい。2 + 0.04 × 150 = 8サイクルです。
  • B. 6サイクルはヒット時間を足し忘れた値です。
  • C. 152サイクルはミスしたときの1回分の時間です。
この分野を解く 分野ページへ

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

  1. キャッシュが理想的なら平均CPIが1.0のプロセッサで、1命令あたり平均1.3回のメモリアクセスがあり、そのミス率が2%、ミスペナルティが100サイクルのとき、実際の平均CPIはいくらか。
  2. ノンブロッキングキャッシュ(ミスの処理中もほかのアクセスを受け付けるキャッシュ)の主な利点はどれか。
  3. L1キャッシュのミス率(全アクセスに対する割合)が4%、L2キャッシュのグローバルミス率(全アクセスのうちL2でもミスする割合)が1%のとき、L2のローカルミス率はいくらか。
  4. TLBのエントリが64個で、ページサイズが4 KBのとき、TLBのミスなしでアクセスできるメモリの範囲(TLBリーチ)はいくらか。
  5. 大きなページ(ヒュージページ)を使う主な利点と欠点の組み合わせとして正しいものはどれか。