CPUのスヌーピング

最終更新日 2024年10月23日

CPUのスヌーピングとは

基礎

CPUのスヌーピングとは、複数のCPUを搭載するコンピューターで、キャッシュメモリーのコヒーレンシーを保つために行う処理です。

コヒーレンシー

コヒーレンシーとは、CPUのキャッシュメモリーが保持しているデータと、メインメモリーが保持しているデータ、両者がそろっていることです。

スヌーピングの例

CPU(A)とCPU(B)があるとします。

CPU(A)がメインメモリー空間にデータを書き込みます。まだメインメモリーに書き込まず、キャッシュメモリーにデータを書き込みます。CPU(A)がCPU(B)に、書き込みしたメインメモリー空間のアドレスを通知します。

CPU(B)が、そのアドレスのデータをキャッシュメモリーに保持していた場合、そのデータを無効化します。CPU(A)がメインメモリー空間に書き込んだデータをキャッシュメモリーに書き込んだが、さらにメインメモリーにも書き込みます。

CPU(B)がそのデータを必要とする場合、そのデータをメインメモリーから読み込みキャッシュメモリーに書き込みます。

この一連の処理がスヌーピングです。スヌーピングによりコヒーレンシーを保つことができている、すなわちCPU(A)のキャッシュメモリー、CPU(B)のキャッシュメモリー、メインメモリー、それぞれが保持しているデータがそろっている状態を保つことができています。

出典

ASCII.jp:マルチコアCPUのキャッシュで問題となるコヒーレンシと解決策 (1/3)|ロードマップでわかる!当世プロセッサー事情(2010/11/22更新記事)


キャンペーン情報(PR)
マウスコンピューター
・オータムセール
最大50,000円OFF
(10月9日迄)
DELL
・今週のおすすめ製品
対象製品が特別価格でお買い得
(キャンペーン実施中)
パソコン工房
・決算セール
セール対象BTOパソコン最大55,000円OFF
(10月1日迄)

CPUのコヒーレンシー



デル株式会社