acm-header
登录

ACM通信

贡献的文章

为什么片上缓存一致性会继续存在


彩色积木的城市

图源:Dave Bollinger

芯片上的硬件一致性可以随着内核数量的增加而优雅地扩展。

这篇文章的全文是优质内容


评论


CACM管理员

以下信件发表于2012年9月的中国计算机学会《致编辑的信》(//www.eqigeno.com/magazines/2012/9/154585)。
——CACM管理员

为了理解为什么Milo M.K. Martin等人(2012年7月)的“为什么片上缓存一致性是存在的”的关键假设,即片上多核架构要求本地缓存可能是有问题的,考虑以下处理器将写入并行程序中的共享变量的例子:

例1。没有其他处理器寻求读取或写入变量,在这种情况下,将变量复制到处理器本地的位置(寄存器或草稿板),根据需要访问它,然后将其存储回共享位置或变量中几乎没有什么危害;而且

例2。其他处理器需要读取和/或写入该变量。

本文中比较的两种本地缓存情况,无论是否具有缓存一致性,都需要相当大的流量来确保对变量的一致访问。但是,如果并行程序中的所有写更新都使用前缀和或其他事务内存类型的指令执行到共享位置,那么流量与所有处理器对该变量的实际访问数量成正比。这种执行写更新的方式比Martin等人所提倡的自动缓存一致性(每次访问都需要更广泛的通知)有了显著的改进。

总的来说,Martin等人在文章中提出的用于并行片上计算的大型私有缓存的赌注尚未证明自己是硅资源的良好分配;例如,在一个1000核的设计中,每个私有缓存中多一个字可能意味着共享缓存中少1000个字——从编程的便捷性和整体性能来看,这并不一定是一件好事。

我自己最近在马里兰大学的研究(1)(2)表明,传统上对私有缓存的强调可能是目前多核编程对大多数程序员来说仍然过于困难的主要原因。虽然代码向后兼容性对于串行代码来说很有说服力,但并行编程的难度,特别是局部性,仍然是阻碍采用多核的最大障碍。

乌兹冲锋枪Vishkin
马里兰大学帕克分校

参考文献

(1) Vishkin, U.混合串行和并行计算机的计算机内存结构方法;美国专利7,707,388和8,145,879。

(2) Vishkin, U.使用简单的抽象来重新发明并行计算。Commun。中国机械工程学报44,1(2011年1月),7585。


显示1评论

登录阅读全文

登录

如果您是ACM会员、通信订阅者或数字图书馆订阅者,则使用您的ACM Web帐户用户名和密码登录以访问优质内容。

需要访问吗?

请选择以下其中一个选项以访问优质内容和功能。

创建一个网络帐户

如果您已经是ACM会员,通信订阅用户,或数码图书馆订阅用户,请设立网上帐户,以便阅览本网站的优质内容。

加入ACM

成为ACM会员可以充分利用ACM卓越的计算信息资源、网络机会和其他优势。

订阅ACM杂志通讯

获得完全访问超过50年的CACM内容,并每月收到印刷版杂志。

购买物品

非会员可以购买这篇文章或它出现的杂志的副本。
登录全面存取
忘记密码? »创建ACM Web帐户
Baidu
map