MOESI Cache Coherence protocol | My Note

MOESI Cache Coherence protocol

Updated: Oct 19th, 2023


MOESI 是一个完整的缓存一致性协议,它包含了其他协议中常用的所有可能状态。除了四种常见的 MESI 协议状态之外,还有第五种 Owned 状态,表示修改和共享的数据。 这就避免了在共享数据之前将修改过的数据写回主存的需要。虽然数据最终仍然必须写回,但写回可能是延迟的。

已修改Modified (M):缓存⾏是脏的(dirty),与主存的值不同,并且缓存具有系统中唯一有效数据。处于修改状态的缓存可以将数据提供给另一个读取器,而无需将其传输到内存,然后状态变为 O,读取者变为 S。 拥有Owned(O):缓存⾏是脏的(dirty),与主存的值不同,但不是系统中唯一有效副本,一定存在其他的 S。为其他核心提供读请求,较少核心间总线带宽。 独占Exclusive (E):缓存⾏只在当前缓存中,但是⼲净的(clean),缓存数据同于主存数据。当别的缓存读取它时,状态变为共享;当前写数据时,变为已修改状态。 共享Shared (S):缓存⾏也存在于其它缓存中且不一定是⼲净的。如果 O 存在,就是脏的,反之亦然。 ⽆效Invalid (I):缓存⾏是⽆效的。

  1. 【全面讲解】CPU缓存一致性:从理论到实战(上) …
    1. 【全面讲解】CPU缓存一致性:从理论到实战(上) … - Cubox

MOESI Cache Coherence

[1]

[1]
K. Loughlin, S. Saroiu, A. Wolman, Y. A. Manerkar, and B. Kasikci, “MOESI-prime: preventing coherence-induced hammering in commodity workloads,” in Proceedings of the 49th Annual International Symposium on Computer Architecture, New York, NY, USA, 2022, pp. 670–684, doi: 10.1145/3470496.3527427 [Online]. Available: https://dl.acm.org/doi/10.1145/3470496.3527427. [Accessed: 25-Sep-2023]

Instead of authenticating the giscus application, you can also comment directly on GitHub.

TOC

Notes mentioning this note

There are no notes linking to this note.