免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
12
最近访问板块 发新帖
楼主: nqdgj2007
打印 上一主题 下一主题

linux内存屏障的问题 [复制链接]

论坛徽章:
0
11 [报告]
发表于 2009-10-28 15:34 |只看该作者
原帖由 chenda0.03 于 2009-10-26 13:46 发表
我的看法跟4楼相同,应该是措辞有问题,作者的原话是这样的:“这就阻止了cpu又将registers,cache中的数据用于去优化指令,而避免去访问内存”,真正的意思应该是:“这就阻止了cpu‘去访问cache而不访问内存’”。


内存屏障解决的是load/store的乱序问题,不是cache一致性问题,cache一致性问题由cache snooping协议保证,intel x86的规范是MESI

论坛徽章:
0
12 [报告]
发表于 2009-10-28 15:37 |只看该作者
原帖由 epegasus 于 2009-10-27 10:38 发表
之上这个对于IA32应该没意义,见另一个帖子里的:
intel的是
3. Stores are not reordered with older loads.

再一个问题,我们说多处理器上应该有保证各个cache一致性的方法.那么一致性不应该是需要内存屏障 ...


某些x86处理器不是这样的,最新内核上,读写内存屏障在x86上都做了实现

论坛徽章:
0
13 [报告]
发表于 2009-10-28 15:55 |只看该作者

回复 #11 Solaris12 的帖子

由老大来定论最好了,我一直觉得刷cache只不过是种手段.现在都有 mfence之类的指令了.
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP