Memory Consistency vs Cache Coherence
ความจริงที่ว่า Sequential Consistency เป็นคุณสมบัติที่แข็งแกร่งกว่า Cache Coherence หรือไม่? ตามที่ โซรินดาเนียลเจ; Hill, Mark D; Wood, David A: ไพรเมอร์ที่สอดคล้องกับความจำและความสอดคล้องกันของแคช , Morgan & Claypool, 2011 ความต่อเนื่องตามลำดับสามารถอธิบายได้เป็น (ไม่เป็นทางการ): แบบจำลองหน่วยความจำความสอดคล้องตามลำดับระบุว่าระบบต้องปรากฏขึ้นเพื่อดำเนินการโหลดเธรดทั้งหมดและเก็บไปยังตำแหน่งหน่วยความจำทั้งหมดในลำดับทั้งหมดที่เป็นไปตามลำดับโปรแกรมของแต่ละเธรด การโหลดแต่ละครั้งจะได้รับมูลค่าของร้านค้าล่าสุดตามลำดับทั้งหมด ในคำอื่น ๆ ระบบมีความสอดคล้องตามลำดับหากได้รับเหตุการณ์หน่วยความจำ (โหลดและร้านค้า) ของแต่ละหัวข้อเราสามารถสั่งซื้อเหตุการณ์เหล่านี้ทั้งหมดที่: 1) สำหรับแต่ละกระทู้ลำดับของกิจกรรมของมันจะถูกเก็บไว้และ 2) คำสั่งทั่วโลกคือ อนุกรม (โหลดใด ๆ ส่งคืนค่าล่าสุดที่เก็บไว้) ตอนนี้พวกเขาดำเนินการต่อและอธิบายการเชื่อมโยงกัน: คำนิยามของการเชื่อมโยงกันที่คล้ายคลึงกับคำจำกัดความของความสอดคล้องตามลำดับคือระบบที่เชื่อมโยงกันจะต้องปรากฏขึ้นเพื่อดำเนินการโหลดกระทู้และเก็บทั้งหมดไปยังตำแหน่งหน่วยความจำเดียวในลำดับทั้งหมดที่เคารพคำสั่งโปรแกรมของแต่ละกระทู้ กล่าวอีกนัยหนึ่งระบบจะเชื่อมโยงกันหากได้รับเหตุการณ์ความจำของแต่ละเธรดสำหรับแต่ละตำแหน่งเราสามารถจัดลำดับเหตุการณ์สำหรับตำแหน่งนั้นเช่น: 1) สำหรับแต่ละเธรดลำดับของเหตุการณ์ในตำแหน่งนั้นจะถูกเก็บไว้และ 2) สำหรับแต่ละ สถานที่การสั่งซื้อเป็นแบบอนุกรม ในที่สุดพวกเขาชี้ให้เห็นความแตกต่าง: คำจำกัดความนี้เน้นความแตกต่างที่สำคัญระหว่างการเชื่อมโยงและความสอดคล้องกัน: การเชื่อมโยงกันจะถูกระบุบนพื้นฐานที่ตั้งของหน่วยความจำต่อหน่วยความจำในขณะที่มีการระบุความสอดคล้องกับสถานที่หน่วยความจำทั้งหมด ดังนั้นดูเหมือนว่าความแตกต่างคือสำหรับระบบที่เชื่อมโยงกันเราจำเป็นต้องมีคำสั่งทั้งหมดในทุกเหตุการณ์สำหรับแต่ละสถานที่ …