プリフェッチ
プリフェッチとは、CPUがデータをあらかじめキャッシュメモリに読み出しておく機能のことである。
CPUがプリフェッチを行うことによって、データの読み出し命令があった場合に逐次読み出しを行う場合に比べて処理応答速度を大幅に短縮することができる。プリフェッチにはハードウェアが自動的に推測して読み出しを行う場合やソフトウェアが命令を発してデータを読み込ませる場合がある。ハードウェアによるプリフェッチの機能には、キャッシュにデータを読み込む際、あらかじめその次のキャッシュラインも読み込んでおく機能があり、特にネクストラインフェッチ(Next Line Fetch)と呼ばれている。
ハードウェアにおけるプリフェッチ機能は、IntelのTualatinコアのPentium IIIやCeleron、AMD社のPalominoコアのAthlonシリーズなどのマイクロプロセッサなどで採用されている。
プリフェッチ
出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2023/02/24 03:03 UTC 版)
![]() |
プリフェッチ (prefetch) とは、コンピュータにおいて、利用が予測されるデータをあらかじめより高速なメモリに読み込んでおき、性能と速度の向上を図る動作である。日本語では事前読込み(じぜんよみこみ)という。
例として以下のようなものがある。
ハードウェアにおけるプリフェッチ
- CPUにおける命令プリフェッチ (en:Instruction prefetch)
- CPUのプリフェッチ命令。メインメモリからキャッシュメモリへのデータ読込みを明示的に指示する。しばしばオペレーティングシステムが発行し、またコンパイラが埋め込んだ最適化コードにも存在する。
OSにおけるプリフェッチ
オペレーティングシステムにおけるプリフェッチ動作。補助記憶装置からメインメモリへの読込みを行う。ファイルシステムからファイルデータを読み込んだり、あるいは仮想記憶からページをスワップインする。
- Windows XPに搭載されたプリフェッチ機能 (en:Prefetcher) 。OSの起動を高速化する。
- Windows Vista / 7 / 8 / 8.1 / 10に搭載されたプリフェッチ機能 (SuperFetch) 。アプリケーションやデータの起動やアクセスを高速化する。
ソフトウェアにおけるプリフェッチ
![]() |
アプリケーションにおいて、予め利用されると予測されるデータを読み出しておくこともある。
例として、ウェブブラウザにおけるリンクプリフェッチ (en:Link prefetching) がある(Mozilla以降など)。ユーザの操作に対する応答時間を短縮する事を狙う。この場合は通信回線やネットワークサーバの負荷増大も招くため、Chromeなど一部のブラウザでは却ってリクエスト処理に時間がかかり、ブラウザが半ば固まってしまうような状態となる場合も少なくないため、必ずしもプリフェッチが有効であるとは言い切れない。
プリフェッチ (Pre-fetch)
出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2020/11/05 14:09 UTC 版)
「キャッシュメモリ」の記事における「プリフェッチ (Pre-fetch)」の解説
CPUが専用命令などによりあらかじめデータをキャッシュに汲んでおく動作。データの流れがある程度予測できるような特定のソフトウエアアルゴリズムは、先んじてプリフェッチを行うことで実際にデータが必要な場面で余分なレイテンシがかかることなくスムーズに処理を行うことができる。例えばストリーミング処理のようなデータの流れや処理量などが単純で予測しやすい処理などは、プリフェッチを行うことで大幅に性能向上する場合がある。
※この「プリフェッチ (Pre-fetch)」の解説は、「キャッシュメモリ」の解説の一部です。
「プリフェッチ (Pre-fetch)」を含む「キャッシュメモリ」の記事については、「キャッシュメモリ」の概要を参照ください。
「プリフェッチ」の例文・使い方・用例・文例
- プリフェッチのページへのリンク