多核心與同步
關於快取一致性與記憶體一致性模型的差異,下列說明何者正確?
- A兩者意義相同,只是叫法不同
- B一致性(coherency)是消除同一位址的值不一致的約定,一致性模型(consistency model)是關於不同位址的操作會以什麼順序被看到的約定
- C一致性(coherency)只由軟體實現,一致性模型(consistency model)只由硬體實現
查看答案與解析
正確答案:B. 一致性(coherency)是消除同一位址的值不一致的約定,一致性模型(consistency model)是關於不同位址的操作會以什麼順序被看到的約定
快取一致性(coherency)針對某一個位址,保證所有核心都以相同的順序看到寫入,並最終能讀到最新的值。另一方面,一致性模型(consistency model)規定了當核心0先寫入x再寫入y時,其他核心看到x與y的寫入可能是什麼順序。即使維持了快取一致性,不同位址的順序仍可能看起來被調換,這時就需要屏障。
- A. 處理的問題不同。
- B. 正確。兩者齊備,才能寫出正確的平行程式。
- C. 兩者都同時涉及硬體與軟體。