【らいとばっく】
ライトバック とは?
最終更新:
💡 とりあえずメモして、まとめて清書
キャッシュ内のデータを更新し、その先のメモリへの反映を後回しにする書き込み方式。更新済みのラインを追い出すときや、明示的に書き戻すときなどに反映する。ここではCPUキャッシュを例に説明する。
📌 このページのポイント
ライトバックってどういう仕組みなの?
後回しにした分は、いつ書くの?
更新したキャッシュラインを別のデータのために追い出すときなどに書き戻すよ。明示的なクリーン操作で反映することもある。追い出すときだけに限らず、装置の仕組みや操作によって変わるんだ。
どうやって「まだメモリに書いてないデータ」を区別するの?
ダーティビットなどの印で管理するよ。ダーティは、キャッシュ側にまだ書き戻していない更新がある状態。更新したラインを捨てる前に、その内容を必要な書き戻し先へ渡すんだ。
ライトスルーより速いの?
同じ場所を繰り返し更新する場合などに、メモリへ送る回数を減らせるよ。ただ、実際の速度差は処理内容や書き込みバッファ、書き戻しの負担にもよる。いつも圧倒的に速い、とまでは言えないんだ。
ほかのコアが古いデータを読まないの?
まとめ:ざっくりこれだけ覚えればOK!
「ライトバック」って出てきたら「キャッシュで先に更新し、後でメモリへ書き戻す方式」と思えばだいたいOK!
📖 おまけ:英語の意味
「Write-Back」 = 書き戻し
💬 キャッシュに書いたデータを、あとでメモリに back(戻す)するという意味だよ