【发布时间】:2020-03-28 05:03:14
【问题描述】:
我了解,对于 MSI,如果我们有一块处于共享状态的内存,即使没有其他人使用它,我们也必须广播我们正在修改的内容。这是 MESI 解决的问题。
但是,当我们确实使用 MESI 时,当从无效变为独占时,我们需要广播我们要读取此内容,并等待如果没有 HIT 响应。这有什么好?
【问题讨论】:
-
您的“无 MESI”案例正在使用 MSI?没有anything,您甚至没有连贯性,也无法真正构建有用的 SMP 系统。
-
如果您的行最初是“无效的”,那么无论任何一致性协议如何,这都是缓存未命中。您需要从其他地方阅读它。 (除非您正在执行全行写入,在这种情况下是的,您可以广播无效而不是 RFO。)
-
@PeterCordes 是的,我的意思是 MSI。是的,我需要(从记忆中)阅读它,然后我们做我说的事情。但似乎我并没有为自己保存任何广播,我只是在获取我的东西时这样做,而不是在我从共享变为修改时这样做。
标签: caching cpu-architecture cpu-cache mesi