Skip to main content

แคชเชื่อมโยงกันคืออะไร?

การเชื่อมโยงกันของแคชเป็นปัญหาตามธรรมชาติที่พัฒนาขึ้นเมื่อชุดข้อมูลระบบถูกเข้าถึงและเปลี่ยนแปลงโดยตัวแทนหลายตัวพื้นที่หลักของสถาปัตยกรรมคอมพิวเตอร์ที่สิ่งนี้กลายเป็นปัญหาอยู่ในคอมพิวเตอร์หลายโปรเซสเซอร์โปรเซสเซอร์แต่ละตัวในคอมพิวเตอร์หลายโปรเซสเซอร์มีแคชของตัวเองที่โหลดและเก็บข้อมูลจากหน่วยความจำการเข้าถึงแบบสุ่ม (RAM)เมื่อโปรเซสเซอร์สองตัวกำลังเข้าถึงพื้นที่หน่วยความจำเดียวกันการเชื่อมโยงกันของแคชจะหายไปหากไม่ได้ใช้ความระมัดระวังบางอย่าง

หากไม่มีการเชื่อมโยงกันของแคชระบบมัลติโปรเซสเซอร์จะไม่สามารถทำงานได้มีหลายวิธีที่ได้รับการพัฒนาเพื่อแก้ไขปัญหานี้และหลีกเลี่ยงปัญหาที่อาจเกิดขึ้นการเชื่อมโยงกันตามไดเรกทอรีการสอดแนมและคำรามเป็นสามวิธีที่ใช้เพื่อป้องกันการสูญเสียการเชื่อมโยงแคช

การเชื่อมโยงกันตามไดเรกทอรีทำงานเป็นตัวกรองเพื่อให้แน่ใจว่าเชื่อมโยงกันข้อมูลถูกวางไว้ในส่วนหนึ่งของหน่วยความจำที่สามารถเข้าถึงได้สำหรับโปรเซสเซอร์ทั้งหมดเมื่อข้อมูลที่เก็บไว้ภายในพื้นที่ของหน่วยความจำนั้นมีการเปลี่ยนแปลงระบบจะอัปเดตแคชหรือทำให้เป็นโมฆะsnooping ต้องการโปรเซสเซอร์เพื่อตรวจสอบการเข้าถึงทั้งหมดไปยังตำแหน่งหน่วยความจำที่ได้รับการแคชสิ่งนี้ช่วยให้โปรเซสเซอร์ทราบเมื่อมีการดำเนินการเขียนโดยการรู้ว่าเมื่อมีการดำเนินการเขียนเกิดขึ้นโปรเซสเซอร์สามารถอัปเดตแคชของมัน

snarfing ค่อนข้างคล้ายกับการสอดแนมSnarfing ไม่เพียง แต่ตรวจสอบการเข้าถึงตำแหน่งหน่วยความจำที่ได้รับการแคช แต่ยังตรวจสอบข้อมูลจริงที่เก็บไว้ในหน่วยความจำเมื่อมีการเขียนหน่วยความจำเกิดขึ้นแคชสามารถอัปเดตด้วยข้อมูลใหม่

ระบบการเชื่อมโยงกันตามไดเรกทอรีมีเวลาแฝงค่อนข้างสูงส่งผลให้การประมวลผลช้าลงข้อกำหนดแบนด์วิดท์ที่ต่ำกว่าช่วยให้ระบบการเชื่อมโยงกันตามไดเรกทอรีสามารถใช้งานได้จริงในแอปพลิเคชันขนาดใหญ่ของการเชื่อมโยงแคชยิ่งโปรเซสเซอร์ที่ระบบใช้มากเท่าไหร่ก็ยิ่งมีข้อได้เปรียบมากขึ้นจากการใช้ระบบการเชื่อมโยงกันตามไดเรกทอรี

การสอดแนมเป็นวิธีที่เร็วกว่ามากวิธีนี้ต้องใช้แบนด์วิดท์มากกว่าวิธีการตามไดเรกทอรีวิธีนี้สามารถใช้งานได้อย่างมีประสิทธิภาพในระบบที่มีโปรเซสเซอร์ค่อนข้างน้อย

Snarfing ไม่ได้ใช้เป็นวิธีการรักษาความสอดคล้องกันของแคชนี่เป็นหลักเนื่องจากการทำนายต้องการทรัพยากรมากขึ้นที่จะใช้เมื่อเปรียบเทียบกับวิธีการสอดแนมและวิธีการตามไดเรกทอรีเพื่อให้ระบบ Snarfing ทำงานได้จะต้องติดตามทั้งที่อยู่หน่วยความจำและข้อมูลที่เก็บไว้ในพื้นที่หน่วยความจำเหล่านั้นจำนวนแบนด์วิดท์และการประมวลผลที่ใช้โดยวิธีนี้ทำให้ไม่พึงประสงค์สำหรับการใช้งานส่วนใหญ่ในการรักษาความสอดคล้องของแคช