キャッシュ_(コンピュータシステム)
TVで話題!あなたの
脳内はどうなってる?

[Wikipedia|▼Menu]

キャッシュ (en:cache) は、CPUバスネットワークなど様々な情報伝達経路において、ある領域から他の領域へ情報を転送する際、その転送遅延を極力隠蔽化させ転送効率を向上させるために考案された記憶階層の実現手段である。実装するシステムに応じてハードウエアソフトウエア双方の形態がある(今後コンピュータプログラムなども含め全ての転送すべき情報データと表す)。キャッシュ概要図

転送元と転送先の中間に位置し、データ内容の一部とその参照を保持する。データ転送元への転送要求があり、それへの参照が既にキャッシュに格納されていた場合は、元データからの転送は行わずキャッシュが転送を代行する(この状態をキャッシュヒット、キャッシュに所望のデータが存在せず元データから転送する状態をキャッシュミスヒットという)。もしくは出力データをある程度滞留させ、データ粒度を高める機能を持つ。これらによりデータの2種の局所性、すなわち時間的局所性空間的局所性を活用し、データ転送冗長性オーバヘッドを低減させることで転送効率を向上させる。

コンピュータの各記憶領域を始めとして、ネットワークデータベースグラフィックスプロセッシングユニット(GPU)、デジタル信号処理機(DSP)など様々なシステムの様々な階層に搭載されている。
目次

1 基本概念

1.1 記憶階層 (Memory Hierarchy)

1.2 時間的局所性 (Temporal Locality)

1.3 空間的局所性 (Spatial Locality)


2 歴史

3 参考文献

4 関連項目

//


基本概念


記憶階層 (Memory Hierarchy)記憶階層の例

データを保持する記憶装置のコストバランスは、通常小容量×高速≒大容量×低速が成り立つ。小容量×高速記憶装置の代表はCPUレジスタであり、大容量×低速記憶装置の代表はハードディスク磁気テープなどの補助記憶装置である。記憶装置の理想は大容量×高速アクセスであるが、通常コストパフォーマンスが悪く実現困難である。そのため小容量×高速、中容量×中速、大容量×低速など複数段階にまたがった記憶構造とし(一般にCPUなどバスマスタに近い側を上位レベル、遠い側を下位レベルとする)、各レベルを各々下位レベルの一時記憶として用いることで代替する。この構造を記憶階層という。


時間的局所性 (Temporal Locality)

データの再利用率とその時間的特性を示す言葉。ある領域のデータ転送が行われ、近い期間に再度同一データの転送が行われる可能性がある場合は時間的局所性があるという。CPUにおける命令キャッシュや、ウェブブラウザなどにおけるファイル単位のデータ保持などは、転送が行われた近い期間にループや戻るボタンなどによる再転送要求を期待して、アクセスがあったデータをある程度後まで保持しておく。逆に音声のようなストリームデータなどは時間的局所性はあまりなく、下記にあるキャッシュの空間的局所性に頼った効率化を図る必要がある。


空間的局所性 (Spatial Locality)

データの格納位置に対する偏在性を示す言葉。ある転送要求データの近傍領域が連続もしくは近い期間に転送要求される可能性がある場合は空間的局所性があるという。真にランダムに転送されるべきデータというのは少なく、大抵のデータには空間的局所性が存在する。一般的にデータ転送でスループットよりレイテンシ、すなわちデータ転送帯域より転送距離が問題となる場合は、小さなデータを何度も転送するよりも少ない回数でより多くのデータを転送することで効率向上する場合が多い。従って転送元は空間的局所性を期待して未要求の近傍データも同時に送り、キャッシュにより未要求データを保持することで、キャッシュ下位レベルとの転送セット回数を削減しようとする。CPUキャッシュメモリのラインサイズは、この空間的局所性に鑑みて決定される。



歴史

1961年 マンチェスタ大学のTom Kilburnらが開発中のコンピュータAtlasに仮想記憶機構を搭載

1962年 Kilburnらが論文"One-level storage system"を発表

1965年 ケンブリッジ大学のMV Wilkesがキャッシュに関する最初の論文"Slave Memories and Dynamic Storage Allocation"を発表(論文ではキャッシュをスレーブメモリと呼んだ)

1965年 ケンブリッジ大学でGordon Scarrottがダイレクトマップ方式の命令キャッシュを実装

1967年 最初のキャッシュ搭載商用マシンIBM360/85が完成(16-32KB, 80-160ns)。


★制服でHなバイト★
1日5万円★日払い★

[次ページ]
[オプション/リンク一覧]
[記事の検索]
[おまかせ表示]
[トップページ]
[ニュースをチェック!]
[列車運行情報]
Size:12 KB
出典: フリー百科事典『ウィキペディア(Wikipedia)
担当:Smilegreen