多核处理器上的内存访问一致性

多核处理器上的内存访问一致性是指在多个处理器共享同一块内存时,保证每个处理器对内存的读写操作能够得到正确和一致的结果。

为了保证多核处理器上的内存访问一致性,需要解决以下两个问题:

 缓存一致性:缓存一致性是指在多个处理器都有自己的缓存时,保证每个处理器对缓存的读写操作能够及时地反映到内存和其他处理器的缓存中,避免出现缓存不一致的情况。

缓存一致性通常通过一些协议来实现,比如MSI协议,MESI协议,MOESI协议等。³ 这些协议定义了缓存行的状态和转换,以及处理器之间的通信和同步机制。


 内存模型:内存模型是指在多个处理器都有自己的指令乱序执行和写缓冲区时,保证每个处理器对内存的读写操作能够按照一定的顺序和规则来进行,避免出现内存不一致的情况。

内存模型通常分为强内存模型和弱内存模型,强内存模型要求处理器严格按照程序代码的顺序来执行内存操作,而弱内存模型允许处理器在一定程度上打乱内存操作的顺序,以提高性能。⁴ 弱内存模型通常需要使用一些同步指令或原子操作来保证内存操作的顺序和可见性。

 

(1) 内存一致性(Memory Consistency) https://zhuanlan.zhihu.com/p/422848235.
(2) 每个程序员都应该知道的 CPU 知识:https://zhuanlan.zhihu.com/p/336365600.
(3) cache之多核一致性(二) - MSI协议 - 知乎 - 知乎专栏. https://zhuanlan.zhihu.com/p/95435168.
(4) 多核cpu可以并行读取内存中的数据吗? - 知乎. https://www.zhihu.com/question/468575212.
(5) 介绍内存一致性(Memory Consistency)和缓存一致性(Cache Coherence)-CSDN博客. https://blog.csdn.net/iNostory/article/details/119047985.

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

aFakeProgramer

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值