Least Recently Usedとは? わかりやすく解説

Weblio 辞書 > 辞書・百科事典 > デジタル大辞泉 > Least Recently Usedの意味・解説 

エル‐アール‐ユー【LRU】

読み方:えるあーるゆー

《least recently used》コンピューターキャッシュメモリー仮想記憶保存されデータ書き換える際に用いられる方式一つ。「最も過去に使用された」の意で、過去参照されてから最も時間経ったデータ破棄し新規データ置換することを指す。→エル‐エフ‐ユーLFU


Least Recently Used

出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2024/03/17 03:23 UTC 版)

Least Recently Used (LRU) とは、データが最後に使われたのはいつであるかを記録し、最近最も使われなかったデータをキャッシュから削除するキャッシュアルゴリズムのこと。CPUのキャッシュメモリ仮想メモリが扱うデータリソースへの割り当てなどにも使われる。対義語はMost Recently Used (MRU)。

和訳すると「最近最も使われなかったもの」つまり「使われてから最も長い時間が経ったもの」「参照される頻度が最も低いもの」である。

小容量で高速な記憶装置(例えば、CPUのキャッシュメモリ)がいっぱいになったとき、その中にあるデータのうち、未使用の時間が最も長いデータを大容量で低速な記憶装置(例えば、主記憶装置)に保存する、というのが基本のアルゴリズムである。

なお、上の括弧内の例はCPUのキャッシュメモリの場合である。仮想メモリの場合は、小容量で高速な記憶装置を主記憶装置、大容量で低速な記憶装置を補助記憶装置に置き換えればよい。

具体的なアルゴリズム

一般の場合

連結リスト連想配列を組み合わせた物を使用すると(例えばJavaのLinkedHashMap[1])O(1)の時間計算量で計算が可能である。連想配列により、キャッシュからの取り出しはO(1)であり、参照した際に、連結リストの端に持ってくれば良く、これもO(1)である。キャッシュへの挿入も同様にO(1)である。

CPUのキャッシュメモリの場合

それぞれのエントリごとに、「いつ使用したか」を示すデータを保存する。エントリを使用するごとにそのデータを更新していく。エントリが更新されるタイミングで、それらの時刻を全エントリに対してチェックすると、「最も使用されていないエントリ」が判明する。これが、理想的なLRUアルゴリズムである。しかし、この方法はとても処理に時間がかかる(O(n))ため、ほとんど使用されない。LinkedHashMapのような手法もCPUのキャッシュメモリとして使用するには計算量が多すぎる。

多くの場合、処理を簡単化した擬似的なLRUが用いられる。たとえば、すべてのエントリに「最近使用したかどうか」を示すフラグ(dirty flag)を設ける。一度すべてをリセットし、エントリを使用するごとにそのフラグをセットする。一定のタイミング、またはエントリを更新する際にそれらのフラグをチェックすると、「最近使用されていないエントリ」が判明する。適当なタイミングで、またすべてのフラグをリセットする。 これは、完全なLRUではないが、多くの場合非常に近い性能を発揮する。

最悪の場合

LRUは、特定のパターンの場合に極端に悪いパフォーマンスを示すことが知られている。たとえば、N個のエントリがある場合に、N+1個のエントリを順番に使用した場合、常にエントリの内容が変更されてしまう。

派生形

単純に最終利用時刻だけでなく、キャッシュに復元する際のコスト(例えば計算結果のキャッシュの場合は再計算にかかる時間)も加味してアルゴリズムを構築する方法などがある。

整理法

LRUは、コンピュータに限らず、野口悠紀雄の『「超」整理法』にも使われている。整理法としては、たとえば、読み終わった本を本棚の一番右側に戻すようにしておくと、左側に読む頻度の少ない本が集まり、処分すべき本を簡単に決めることができる。使われない物が端に押し出されるので、野口悠紀雄はこの手法を押出し法(押出しファイリング)と呼んでいる。[2]

関連項目

参照

  1. ^ LinkedHashMap (Java SE 17 & JDK 17)”. docs.oracle.com. 2023年7月4日閲覧。
  2. ^ 野口悠紀雄『「超」整理法―情報検索と発想の新システム』中央公論新社、1993年11月1日。ISBN 978-4121011596 


英和和英テキスト翻訳>> Weblio翻訳
英語⇒日本語日本語⇒英語
  

辞書ショートカット

すべての辞書の索引

「Least Recently Used」の関連用語

Least Recently Usedのお隣キーワード
検索ランキング

   

英語⇒日本語
日本語⇒英語
   



Least Recently Usedのページの著作権
Weblio 辞書 情報提供元は 参加元一覧 にて確認できます。

   
デジタル大辞泉デジタル大辞泉
(C)Shogakukan Inc.
株式会社 小学館
IT用語辞典バイナリIT用語辞典バイナリ
Copyright © 2005-2024 Weblio 辞書 IT用語辞典バイナリさくいん。 この記事は、IT用語辞典バイナリLRUの記事を利用しております。
ウィキペディアウィキペディア
All text is available under the terms of the GNU Free Documentation License.
この記事は、ウィキペディアのLeast Recently Used (改訂履歴)の記事を複製、再配布したものにあたり、GNU Free Documentation Licenseというライセンスの下で提供されています。 Weblio辞書に掲載されているウィキペディアの記事も、全てGNU Free Documentation Licenseの元に提供されております。

©2024 GRAS Group, Inc.RSS