Intel缓存分配技术(CAT)是否允许跨CPU组命中其他组的缓存行?
Intel CAT下跨CPU缓存一致性的行为说明
答案是肯定的:CPU2会发送自身缓存中的副本,而非让CPU1从主存加载。
原因如下:
- Intel CAT(缓存分配技术)仅负责LLC缓存的分配隔离——它限制不同CPU的缓存行只能分配到指定的LLC路组,但完全不改变CPU之间的缓存一致性协议(MESI)的运作逻辑。
- 当CPU1执行
PrRd指令加载某缓存行时,仍会按照MESI协议的流程发出BusRd总线请求;CPU2检测到该请求后,只要自身缓存中持有该缓存行的有效副本,就会直接把副本发送给CPU1,和没有配置CAT时的行为一致。 - CAT的规则只约束新缓存行的分配位置,不会干预已存在缓存行的一致性交互过程。
内容的提问来源于stack exchange,提问作者doraemon
相关产品推荐
相关产品推荐

