1. ホーム
  2. caching

[解決済み] FIFOキャッシュとLRUキャッシュの比較

2022-02-19 10:31:08

質問

素朴な質問で本当に申し訳ありません。ただ、FIFOキャッシュモデルを正しく理解しているかどうかを確認したいだけなので、どなたか助けていただけると幸いです :) LRUキャッシュは、キャッシュが一杯になった場合、最も最近アクセスされたエントリを削除します。FIFOは、キャッシュに空き領域が必要な場合、他のエントリよりも早く(?)追加されたエントリを削除します(例えば、'a' - 'v' - 'f' - 'k' がキャッシュ内のエントリで、'a' が最も古いエントリであれば、キャッシュは空き領域を必要とするなら 'a' を削除します)。

そうでしょうか?

解決方法は?

ご指摘の通りです。

FIFOは、車がトンネルを通過するようなものだと考えてください。 最初にトンネルに入った車が、反対側に最初に出ることになります。

LRUキャッシュは、ガレージの掃除と同じだと考えてください。 長い間使っていないものは捨て、よく使うものはとっておく。 このアルゴリズムを進化させたもの(単純なLRUの改良)は、長い間使われておらず、結局必要になったとしても交換するのに高価でないものを捨てるというものです。