L1/L2 は必ずしも包括的ではなく、最後のレベルのキャッシュのみが包括的であることがわかっており、i7 では L3 になります。キャッシュラインは基本的なキャッシング要素であると言っているのは正しいです。新しいものを埋めるために(またはその単一のラインを無効にするときに)キャッシュライン全体をスローする必要があります。詳細については、こちらをご覧ください - http://www.tomshardware.com/reviews/Intel-i7-nehalem-cpu,2041-10.html
ラインが削除されると、実行されるアクションはその MESI 状態によって異なります (MESI とその派生物は、キャッシュの一貫性を維持するためのプロトコルです)。行が変更された場合 (「M」)、データは次のレベルのキャッシュに「書き戻される」必要があります (ミスの場合はそこに割り当てられるか、次のレベルに「ライトスルー」されます - 依存します)。キャッシュが保持するポリシーに基づいています)。最後のレベルのキャッシュに到達すると、包括的であるため、ヒットする必要があることに注意してください。最後のレベルのキャッシュからラインを削除する場合、メモリに書き込む必要があります。いずれにせよ、変更された行を書き戻すことに失敗すると、一貫性が失われ、誤った実行が行われる可能性が高くなります。
回線が変更されていない場合 (Invalid、Exclusive、または Shared)、CPU はライトバックを必要とせずに静かに回線をドロップする可能性があるため、帯域幅が節約されます。ちなみに、より複雑なキャッシュ プロトコル (MESIF や MOESI など) には、他にもいくつかの状態があります。
「キャッシュコヒーレンスプロトコル」をグーグルで検索すると、多くの説明が見つかります。より確実な情報源が必要な場合は、CPU アーキテクチャまたはキャッシュ設計の教科書を参照できます。個人的には、Hennessy&Patterson の「コンピュータ アーキテクチャ、定量的アプローチ」をお勧めします。キャッシュ パフォーマンスに関する章全体がありますが、ここでは少し話題から外れています。
小規模な更新: Skylake の時点で、一部の CPU (サーバー セグメント) には包括的 L3 がなくなり、非包括的 (増加した L2 をサポートするため) になりました。これは、通常、L3 はそれらのコピーを保持しないため、L2 からエージング アウトするときにクリーンな行も書き戻される可能性が高いことを意味します。
詳細: https://www.anandtech.com/show/11550/the-intel-skylakex-review-core-i9-7900x-i7-7820x-and-i7-7800x-tested/4