pulpul 日本の試験

ITサービスマネージャ 概念書 · 組込み・コンピュータシステム

キャッシュメモリの性能

キャッシュメモリは、速度の遅い主記憶とCPUとの速度差を埋めるために、よく使うデータの写しを高速で小容量のメモリに保持する仕組みである。その性能は、要求されたデータがキャッシュにある割合であるヒット率と、それに基づく実効アクセス時間で評価される。置換アルゴリズムと書込み方式も、キャッシュの動作と性能を決める重要な要素である。

キャッシュの動作と置換アルゴリズム

CPUが要求したデータがキャッシュにあればヒット、なければミスとなり、ミス時には主記憶から該当するブロックを読み込む。キャッシュが満杯の状態で新しいブロックを読み込むときは、どのブロックを追い出すかを決める必要がある。代表的な置換アルゴリズムのうち、FIFOはロードされた時刻が最も古いもの、LFUは参照回数が最も少ないもの、LIFOはロードされた時刻が最も新しいものを置換する。これらは判断の基準がそれぞれ異なるため、問題文でどの情報が与えられているかを確認してから選ぶ必要がある。

LRUは、最後に参照されてから最も長く経過したブロックを置換する方式であり、直近に使われたデータを残すという考え方に基づく。 同じ表を与えられても、FIFOやLFUは別のブロックを選ぶため、判断の基準の違いが結果の違いとして表れる。

実効アクセス時間の計算

実効アクセス時間は、ヒット時の時間とミス時の時間をそれぞれの確率で加重平均して求める。ヒット率をhとし、ヒット時の時間をTc、ミス時の時間をTmとすると、実効時間はh×Tc+(1−h)×Tmとなる。キャッシュのアクセス時間が主記憶の1/30でヒット率が95%の場合、主記憶の時間を1として0.95×(1/30)+0.05×1を計算すると、約0.08倍となる。 ヒット率そのものは確率であり、アクセス時間の倍率ではないため、そのまま答えとして用いてはならない。

この節の続き

ここまでが冒頭部分です。ログインすると、無料でも1日2節まで全文をお読みいただけます。

アプリでこの節を読む