gpt4 book ai didi

cpu-architecture - 微星/微星 : How can we get "read miss" in shared state?

转载 作者:行者123 更新时间:2023-12-04 12:08:40 25 4
gpt4 key购买 nike

在 Jim Handy 的 The Cache Memory Book 中(摘录如下),作者有 MESI 协议(protocol)的表格描述。这张 table 对我来说看起来很不清楚,不幸的是,文字没有帮助。

第一个问题(图中绿色):

Is this right? -- a data block is in the cache of a CPU,
and it is in the shared state, but when the CPU reads it,
the CPU gets read miss.
How is this possible?

第二个问题(紫色):
Who and when create all these messages "Read miss", etc.?
(afaik, the system bus just translates messages of others)

最后,第三个问题(不在图片上):
Do all these cache coherency protocols 
(MSI,MESI,MOESI,Firefly,Dragon...)
maintain sequential consistency memory model?
Are there protocols that maintain other consistency models?

Mesi protocol description

最佳答案

高速缓存行和主内存块之间存在一对多的映射。共享的高速缓存行可能不是您的程序正在寻找的内存块。实际发生的情况是程序想要的内存块和缓存中存在的内存块虽然不同,但具有相同的缓存行索引。连续的内存块被映射到连续的高速缓存行,直到高速缓存行完成,随后的内存块被重新映射到从第一个高速缓存行开始的高速缓存行。

我在这里找到了一个直观的解释:https://medium.com/breaktheloop/direct-mapping-map-cache-and-main-memory-d5e4c1cbf73e

关于cpu-architecture - 微星/微星 : How can we get "read miss" in shared state?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21126034/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com