プリフェッチング(ぷりふぇっちんぐ)
最終更新:2026/4/27
プリフェッチングは、次に使用する可能性のあるデータを事前に読み込んでおくことで、処理速度を向上させる技術である。
別名・同義語 先読みデータ先読み
ポイント
プリフェッチングは、CPUとメモリ間のデータ転送遅延を隠蔽し、システム全体のパフォーマンスを改善するために用いられる。
プリフェッチングとは
プリフェッチングとは、コンピュータシステムにおいて、CPUが次に必要とする可能性のあるデータや命令を、実際に要求される前にメモリからキャッシュに読み込んでおく技術のことです。これにより、CPUがデータを要求した際に、キャッシュから迅速にデータを提供できるため、処理速度の向上を図ることができます。
プリフェッチングの種類
プリフェッチングには、大きく分けて以下の2つの種類があります。
- ハードウェアプリフェッチング: CPUやメモリコントローラなどのハードウェアが、過去のアクセスパターンに基づいて自動的にデータをプリフェッチします。
- ソフトウェアプリフェッチング: プログラムが明示的にプリフェッチ命令を発行し、データをプリフェッチします。
プリフェッチングのメリット
- 処理速度の向上: データアクセスにかかる時間を短縮し、CPUの処理効率を高めます。
- システム全体のパフォーマンス向上: CPUの待ち時間を減らし、システム全体の応答性を向上させます。
- 省電力化: データ転送回数を減らすことで、消費電力を抑制する効果も期待できます。
プリフェッチングのデメリット
- 誤ったプリフェッチ: 実際に使用されないデータをプリフェッチしてしまうと、キャッシュの有効な領域を圧迫し、パフォーマンスを低下させる可能性があります。
- 複雑な実装: 効果的なプリフェッチングを行うためには、ハードウェアとソフトウェアの両面で高度な技術が必要です。
プリフェッチングの応用例
- Webブラウザ: Webページを閲覧する際に、リンク先のデータを事前に読み込んでおくことで、ページの表示速度を向上させます。
- データベース: データベースからデータを取得する際に、関連するデータを事前に読み込んでおくことで、クエリの実行速度を向上させます。
- ゲーム: ゲームの実行中に、次に使用する可能性のあるテクスチャやモデルを事前に読み込んでおくことで、ゲームの動作をスムーズにします。