×

放松记忆模型下验证的有效抽象。 (英语) Zbl 1379.68237号

摘要:我们提出了一种新的基于抽象解释的方法,用于自动验证在放松内存模型上运行的并发程序。我们的方法基于三个关键见解:(i)虽然松弛内存模型(例如TSO和PSO)的行为是由存储缓冲区自然捕获的,但由于对缓冲区内容进行移位操作,直接使用此类编码会大大降低程序分析的准确性。通过消除存储缓冲区内容的昂贵转移,可以大大提高程序分析的可扩展性和准确性,我们提出了一种新的内存模型抽象,以实现这一目标。(ii)通过使用抽象解释域的杠杆知识对存储缓冲区大小进行编码,可以进一步提高分析的精度。(iii)实现上述两种技术的一种新的源到源转换使直接在序列一致性(SC)下使用最先进的分析器成为可能:给定一个程序(P)和一个松弛内存模型(M),它生成一个新程序(P_M),其中(P)的行为在(M)上运行我们实现了我们的方法,并在两种内存模型(Intels x86 TSO和PSO)下对一组有限和无限状态并发算法进行了评估。实验结果表明,我们的技术比以前的工作获得了更好的精度和效率:我们可以用更少的栅栏、更快的速度和更低的内存消耗自动验证算法。

MSC公司:

60年第68季度 规范和验证(程序逻辑、模型检查等)
68纳米30 软件工程的数学方面(规范、验证、度量、需求等)
PDF格式BibTeX公司 XML格式引用
全文: 内政部

参考文献:

[16] Jeannet,B.,并发程序的关系过程间验证,Softw Syst Model,12,2,285-306(2013),URL:〈http://dx.doi.org/10.1007/s10270-012-0230-7
[20] Lamport,L.,《如何制作正确执行多进程程序的多处理器计算机》,IEEE Trans-Comput,28,9月(9),690-691(1979),URL:〈http://dx.doi.org/10.1109/TC.179.1675439〉 ·Zbl 0419.68045号
[23] Miné,A.,八角形抽象域,高阶符号计算,19,1,31-100(2006),URL:〈http://dx.doi.org/10.1007/s10990-006-8609-1〉 ·Zbl 1105.68069号
[24] 对手X。;Mauborgne,L.,跟踪分区抽象域,ACM Trans Program Lang Syst,29,5(2007),URL:〈http://doi.acm.org/10.1145/1275497.1275501
[25] 塞维西克,J。;瓦菲亚迪斯,V。;Nardelli,F.Z。;Jagannathan,S。;Sewell,P.,Compcertsoa验证的松弛内存并发编译器,J ACM,60,3,22(2013),URL:\9001http://doi.acm.org/10.1145/2487241.2487248〉 ·Zbl 1281.68072号
[26] 沙沙,D。;Snir,M.,共享内存的并行程序的高效和正确执行,ACM Trans Program Lang Syst,10,2,282-312(1988),URL:〈http://doi.acm.org/10.1145/42190.42277
此参考列表基于出版商或数字数学图书馆提供的信息。其项与zbMATH标识符进行启发式匹配,可能包含数据转换错误。在某些情况下,zbMATH Open的数据对这些数据进行了补充/增强。这试图尽可能准确地反映原始论文中列出的参考文献,而不要求完整或完全匹配。