マルチコアと同期
逐次一貫性(シーケンシャルコンシステンシ)の説明として正しいものはどれか。
- A各コアの操作が、毎回ランダムな順番で実行される
- Bすべてのコアの操作が、ある1つの順番に並べられ、各コアの操作はプログラムに書いた順番どおりに現れるように見える
- Cすべての操作が、1つのコアだけで実行される
答えと解説を見る
正解:B. すべてのコアの操作が、ある1つの順番に並べられ、各コアの操作はプログラムに書いた順番どおりに現れるように見える
逐次一貫性では、複数のコアの操作がトランプを混ぜるように1列に並べられ、各コアの操作はその中でプログラムの順番を保っているように見えます。プログラマにとって最も分かりやすいモデルですが、ハードウェアがストアバッファなどで順番を入れ替える最適化を大きく制限するので、実際の多くのCPUはもっと緩いモデルを採用しています。
- A. ランダムではなく、プログラムの順番が守られます。
- B. 正しい。最も直感的で分かりやすいモデルです。
- C. 複数のコアで動くことが前提です。