メモリ階層と性能

最も長い間使われていないものを追い出すLRUに対して、今後最も長い間使われないものを追い出す方式(最適置き換え、OPT)についての説明として正しいものはどれか。

  1. A実際のキャッシュで広く使われている、最も一般的な置き換え方式である
  2. B実現できないが、他の方式のミス数の下限を示す基準になる
  3. Cどんなアクセスの並びでもLRUとまったく同じミス数になる
答えと解説を見る

正解:B. 実現できないが、他の方式のミス数の下限を示す基準になる

最適置き換え(ベラディのOPT)は、将来のアクセスの順番が分かっているとして、次に使われるのが最も先のデータを追い出す方式で、ミス数が理論上最小になります。しかし実際のハードウェアは未来のアクセスを知ることができないため実現できず、記録したアクセスの並びに当てはめて、LRUなどの方式がどれだけ最適に近いかを評価するのに使います。LRUとは追い出すデータが違うので、ミス数は一般に異なります。

  • A. 未来を知る必要があるため、実際のキャッシュでは使えません。
  • B. 正しい。実現はできませんが、ミス数の下限を示す基準になります。
  • C. 追い出すデータが違うため、ミス数は一般に異なります。
この分野を解く 分野ページへ

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

  1. キャッシュの容量を大きくすると一般にヒット時間がどうなるか。その理由とあわせて正しいものはどれか。
  2. 上の連結リストをたどる処理が、同じ数の要素をもつ配列を順に読むより大幅に遅くなりやすい理由はどれか。
  3. 1回のミスで64バイトのラインを読み、主記憶の待ち時間が100 nsのとき、同時に処理できるミスが1つだけなら読み出しの帯域は約0.64 GB/sにとどまる。同時に10個のミスを処理できれば、帯域はおよそいくらになるか。(ほかの制約はないものとする)
  4. 一度書いたあと当分読み返さない大きなデータを書き出すとき、キャッシュを通さないストア(ノンテンポラルストア)を使う主な利点はどれか。
  5. キャッシュのヒット率が95%のとき、ミス率はいくらか。