什麼是窺探(Bus snooping)

各快取監看共用匯流排等上流動的其他核心的讀寫,並改變自己快取行狀態的一致性方式。適合核心數少的情況。

日文名稱: スヌーピング

「窺探(Bus snooping)」出現在1領域的2道練習題中(多核心與同步等)。

這個名詞所屬的領域: 多核心與同步

練習窺探(Bus snooping)的題目

關於快取一致性的窺探(snooping)方式,下列說明何者正確?

  1. A作業系統每隔一段時間檢查所有快取,修正不一致
  2. B各核心的快取監視共用匯流排等處流動的其他核心之讀寫,並改變自己快取列的狀態
  3. C程式設計師每次寫入時,手動把值傳送給其他核心
查看答案與解析

正確答案:B. 各核心的快取監視共用匯流排等處流動的其他核心之讀寫,並改變自己快取列的狀態

在窺探方式中,核心的讀寫請求會傳到所有快取,各快取檢查自己是否持有相同的快取列,並進行無效化或傳遞資料。其機制簡單,適合核心數較少的情況。然而核心數增加後,將所有請求傳到所有快取的通訊量會變得過大,因此大規模系統會使用目錄(directory)方式。

在核心數量眾多的系統中,使用目錄方式的一致性協定而非窺探方式,其原因下列何者正確?

  1. A因為記錄各快取列由哪些核心持有,只通知相關的核心,可以減少通訊
  2. B因為採用目錄方式後就不需要快取
  3. C因為採用目錄方式後,每次寫入都能通知所有核心
查看答案與解析

正確答案:A. 因為記錄各快取列由哪些核心持有,只通知相關的核心,可以減少通訊

在目錄方式中,針對每條快取列都有一張表(目錄),記錄哪些核心持有副本以及處於何種狀態。發生寫入時,查看目錄後只對持有副本的核心發送無效化請求。相較於向所有快取一併通知的窺探方式,通訊量較少,因此用於擁有數十個以上核心的伺服器用CPU等。

解析中的「窺探(Bus snooping)」

出現「窺探(Bus snooping)」的題目(2題)

  1. 關於快取一致性的窺探(snooping)方式,下列說明何者正確?
  2. 在核心數量眾多的系統中,使用目錄方式的一致性協定而非窺探方式,其原因下列何者正確?

相關名詞

快取一致性 互斥鎖(Mutex) 比較並交換(Compare-and-swap) 目錄式一致性(Directory-based coherence) 交易式記憶體(Transactional memory) 死結(Deadlock) 自旋鎖(Spinlock) 屏障同步(Barrier synchronization) 原子指令(Atomic instruction) 記憶體一致性模型(Memory consistency model)

前往名詞解釋列表