阿尔加莱、杰德;吕克·马兰吉特;萨卡,苏斯米特;彼得·休厄尔 弱内存模型中的围栏。 (英语) Zbl 1247.68155号 形式方法系统。设计。 40,第2期,170-205(2012). 摘要:我们提出了一类在Coq中定义的放松记忆模型,通过所选允许的读写局部重新排序,以及通过内存查看处理器间和处理器内通信来参数化(例如存储原子性放松)。我们证明了从较弱的模型恢复给定模型(如序列一致性)所需的行为和内存围栏的位置的结果。基于这类模型,我们开发了一个工具\({\mathsf-diy}\),该工具可以系统地自动生成和运行石蕊测试。这些测试可用于探索处理器实现的行为和模型的行为,从而将两者进行比较。我们详细介绍了Power的实验结果以及基于它们的模型。 引用于4文件 MSC公司: 60年第68季度 规范和验证(程序逻辑、模型检查等) 68号30 软件工程的数学方面(规范、验证、度量、需求等) 68M99型 计算机系统组织 68吨15 定理证明(演绎、解析等)(MSC2010) 关键词:弱记忆模型;形式证明;测试工具;电源PC;通用框架;栅栏 软件:TSO工具;UMM公司;Coq公司 PDF格式BibTeX公司 XML格式引用 \textit{J.Algale}等人,《形式方法系统》。设计。40,第2号,170--205(2012;Zbl 1247.68155) 全文: 内政部 参考文献: [1] 英特尔安腾处理器系列内存订购的正式规范,2002年10月。英特尔文档251429-001 [2] Adir A,Shurek G(2002)为多处理器验证生成具有冲突的并发测试程序。输入:HLDVT [3] Adir A、Attiya H、Shurek G(2003)《PowerPC体系结构应用程序共享内存的信息流模型》。输入:TPDS [4] Adve SV,Gharachorloo K(1995)《共享内存一致性模型:教程》。计算机29:66–76·Zbl 05091508号 ·doi:10.1109/2.546611 [5] Ahamad M、Bazzi RA、John R、Kohli P、Neiger G(1993)《处理器一致性的力量》。输入:SPAA [6] Algale J共享记忆诗学。巴黎第七大学和INRIA博士论文,2010年11月26日。http://diy.inia.fr/alglave-thessis.pdf [7] Algale J、Fox A、Ishtiaq S、Myreen MO、Sarkar S、Sewell P、Zappa Nardelli F(2009)《Power和ARM多处理器机器代码的语义》。输入:DAMP [8] Algale J、Maranget L、Sarkar S、Sewell P(2010)《弱记忆模型中的栅栏》。输入:CAV·Zbl 1247.68155号 [9] 阿尔法体系结构参考手册,第4版(2002) [10] AMD64架构程序员手册。Advanced Micro Devices,2007年9月。(3卷) [11] ARM体系结构参考手册(ARMv7-A和ARMv7-R),2008年4月 [12] Arvind,Maessen J-W(2006)内存模型=指令重新排序+存储原子性。In:ISCA。IEEE Comput Soc,洛斯阿拉米托斯 [13] Bertot Y,Casteran P(2004)In:Coq'Art。理论计算机科学中的EATCS文本。柏林施普林格 [14] Boehm H-J,Adve SV(2008)C++并发内存模型的基础。输入:PLDI [15] Burckhardt S,Musuvathi M(2008)放松记忆模型的有效程序验证。输入:CAV·Zbl 1155.68428号 [16] Cantin J,Lipasti M,Smith J(2003)《验证记忆一致性的复杂性》。输入:SPAA [17] Collier WW(1992)《关于并行架构的推理》。纽约普伦蒂斯·霍尔·Zbl 0759.68009号 [18] Hangal S,Vahia D,Manovit C,Lu J-YJ,Narayanan S(2004)TSOTool:使用内存一致性模型验证内存系统的程序。输入:ISCA [19] Higham L,Kawash J,Verwaal N弱内存一致性模型第一部分:定义和比较。技术报告98/612/03,卡尔加里大学计算机科学系,1998年1月 [20] 英特尔64与IA-32体系结构软件开发人员手册(5卷)。英特尔公司,2010年3月。修订版34 [21] Lamport L(1979)如何使正确的多进程程序在多处理器上正确执行。IEEE传输计算46(7):779–782·数字对象标识代码:10.1109/12.599898 [22] Landin A、Hagersten E、Haridi S(1991)《无种族互连网络和多处理器一致性》。计算机建筑新闻19(3):106–115·数字对象标识代码:10.1145/115953.115964 [23] Manson J,Pugh W,Adve SV(2005)Java内存模型。输入:POPL·Zbl 1369.68079号 [24] Owens S,Sarkar S,Sewell P(2009)更好的x86内存模型:x86-TSO。输入:TPHOL [25] 2009年1月Power ISA 2.06版 [26] Sarkar S、Sewell P、Zappa Nardelli F、Owens S、Ridge T、Braibant T、Myreen M、Algale J(2009)《x86-CC多处理器机器代码的语义》。输入:POPL [27] Sarkar S、Sewell P、Algale J、Maranget L、Williams D(2011)《了解功率多处理器》。输入:PLDI [28] Sewell P、Sarkar S、Owens S、Zappa Nardelli F、Myreen MO(2010)x86-TSO:一种适用于x86多处理器的严格且可用的程序员模型。通信ACM 53(7):89–97。(研究亮点)·Zbl 05766788号 ·数字对象标识代码:10.1145/1785414.1785443 [29] Shasha D,Snir M(1988)共享内存的并行程序的高效正确执行。ACM传输程序语言系统10(2):282–312·doi:10.1145/42190.42277 [30] 1992年和1994年第8版和第9版Sparc架构(Architecture)手册 [31] Yang Y,Gopalakrishnan G,Linstrom G,Slind K(2004)Nemos:内存一致性模型公理化和可执行规范的框架。包含:IPDPS [32] Yang Y,Gopalakrishnan G,Lindstrom G(2007)UMM:具有集成模型检查功能的操作内存模型规范框架。收件人:CCPE 此参考列表基于出版商或数字数学图书馆提供的信息。其项与zbMATH标识符进行启发式匹配,可能包含数据转换错误。在某些情况下,zbMATH Open的数据对这些数据进行了补充/增强。这试图尽可能准确地反映原始论文中列出的参考文献,而不要求完整或完全匹配。