メモリ階層と性能
TLBのエントリが64個で、ページサイズが4 KBのとき、TLBのミスなしでアクセスできるメモリの範囲(TLBリーチ)はいくらか。
- A64 KB
- B256 KB
- C4 MB
答えと解説を見る
正解:B. 256 KB
TLBの1エントリは1ページ分の変換を保持するので、TLBリーチ = エントリ数 × ページサイズ = 64 × 4 KB = 256 KBです。プログラムがこれより広い範囲を頻繁に使うとTLBミスが増えます。2 MBの大きなページ(ヒュージページ)を使えば、同じ64エントリで 64 × 2 MB = 128 MBまで広げられます。64 KBはページサイズを1 KBと誤った値で、4 MBはページの数とサイズを取り違えた値です。
- A. 64 KBはページを1 KBと誤った値です。
- B. 正しい。64エントリ × 4 KB = 256 KBです。
- C. 4 MBは計算を誤った値です。