書き込み→読み込み、書き込み→書き込みの緩和
出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2021/08/29 18:38 UTC 版)
「一貫性モデル (ソフトウェア)」の記事における「書き込み→読み込み、書き込み→書き込みの緩和」の解説
モデルによっては、プログラムの順序をさらに緩和し、異なる場所への書き込み間の順序制約さえも緩和するものもある。SPARC V8のパーシャルストアオーダーモデル(PSO)は、このようなモデルの唯一の例である。同じプロセッサから異なる場所への書き込みをパイプライン化し、オーバーラップさせることができることが、PSOが可能にする重要なハードウェア最適化である。PSOは、プロセッサが自分の書き込みの値を読み取ることができ、他のプロセッサが他のプロセッサの書き込みを読み取ることができないようにするという点で、不可分性の要件についてはTSOと同様である。2つの書き込み間のプログラム順序は、PSOでは明示的なSTBAR命令を用いて維持される。このSTBAR命令は、FIFO書き込みバッファを持つ実装では、書き込みバッファに挿入される。カウンタは、STBAR命令以前のすべての書き込みが完了したかどうかを判断するために使用され、メモリシステムへの書き込みが開始されてカウンタが増加します。書き込み確認でカウンタが減少し、カウンタが0になると、それまでの書き込みがすべて完了したことになる。 例Aと例Bでは、PSOによってこれらの非連続的に一貫した結果が得られる。PSOが提供するセーフティーネットはTSOのものと同様で、書き込みから読み出しまでのプログラムの順序を決め、書き込みの不可分性を強制する。 前のモデルと同様に、PSOが許容する緩和は、コンパイラの最適化に役立つほど十分に柔軟ではなく、もっと柔軟な最適化が必要である。
※この「書き込み→読み込み、書き込み→書き込みの緩和」の解説は、「一貫性モデル (ソフトウェア)」の解説の一部です。
「書き込み→読み込み、書き込み→書き込みの緩和」を含む「一貫性モデル (ソフトウェア)」の記事については、「一貫性モデル (ソフトウェア)」の概要を参照ください。
- 書き込み→読み込み、書き込み→書き込みの緩和のページへのリンク