2.CPU多级缓存-缓存一致性

4.jpg

缓存的出现是为了缓解内存与CPU速度不匹配问题。

1.CPU缓存的意义:

  • 时间局部性:如果某个数据被访问,那么在不久将来他能被再次访问。
  • 空间局部性:如果某个数据被访问,那么与它相邻的数据也可能被访问。

2.缓存一致性(MESI)
用于保证多个CPU缓存之间共享数据的一致性。


image.png

M:指被修改状态,与主存中都数据不一致,需要在未来某个时间点写回主存。被写回主存后,变为独享状态。
E:指独享状态,未被修改过,与主存一致,缓存行只存在于该缓存中,可以在任何时间当有其他CPU读取该内存时变成共享状态。被修改时,变为被修改状态。
S:指共享状态,该缓存行可能被多个CPU缓存,且缓存数据与主存一致。当有一个CPU修改该缓存行时,其他CPU的该缓存行变为无效状态。
I:无效状态。

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容