We present a thread-modular abstract interpretation(TMAI) technique to verify programs under the release-acquire (RA) memory model for safety property violations. The main contributions of our work are: we capture the execution order of program statements as an abstract domain, and propose a sound upper approximation over this domain to efficiently reason over RA concurrency. The proposed domain is general in its application and captures the ordering relations as a first-class feature in the abstract interpretation theory. In particular, the domain represents a set of sequences of modifications of a global variable in concurrent programs as a partially ordered set. Under this approximation, older sequenced-before stores of a global variable are forgotten and only the latest stores per variable are preserved. We establish the soundness of our proposed abstractions and implement them in a prototype abstract interpreter called PRIORI. The evaluations of PRIORI on existing and challenging RA benchmarks demonstrate that the proposed technique is not only competitive in refutation, but also in verification. PRIORI shows significantly fast analysis runtimes with higher precision compared to recent state-of-the-art tools for RA concurrency.


翻译:我们对安全财产侵犯的释放-获取(RA)记忆模型下的程序进行在线抽象解释(TMAI)技术。我们工作的主要贡献是:我们把程序声明的执行顺序作为一个抽象领域,并提议对这个领域提出一个健全的高近似值,以便有效解释RA conconal 。拟议领域在应用中是一般性的,在抽象解释理论中将订购关系作为一流特征。特别是,这个领域代表了一组在同时程序下对一个全球变量进行修改的顺序,作为部分订购的一组。在这个近似下,一个全球变量的旧序式储存被遗忘,仅保存每个变量的最新储存。我们确定了我们提议的抽象参数的正确性,并在一个原型的抽象解释者中实施,称为PRIORI。 PRIORI对现有和具有挑战性的RA基准的评估表明,拟议的技术不仅在反驳方面具有竞争力,而且在核查方面也具有竞争力。PRIORI显示,与最近最先进的RA concentical工具相比,快速的分析运行时间要高得多。

0
下载
关闭预览

相关内容

专知会员服务
128+阅读 · 2021年8月4日
【Manning新书】C++并行实战,592页pdf,C++ Concurrency in Action
Keras François Chollet 《Deep Learning with Python 》, 386页pdf
专知会员服务
163+阅读 · 2019年10月12日
【新书】Python编程基础,669页pdf
专知会员服务
197+阅读 · 2019年10月10日
Transferring Knowledge across Learning Processes
CreateAMind
29+阅读 · 2019年5月18日
计算机 | CCF推荐期刊专刊信息5条
Call4Papers
3+阅读 · 2019年4月10日
Call for Participation: Shared Tasks in NLPCC 2019
中国计算机学会
5+阅读 · 2019年3月22日
人工智能 | SCI期刊专刊信息3条
Call4Papers
5+阅读 · 2019年1月10日
Hierarchical Disentangled Representations
CreateAMind
4+阅读 · 2018年4月15日
Arxiv
0+阅读 · 2021年10月13日
Arxiv
3+阅读 · 2017年12月18日
VIP会员
相关VIP内容
专知会员服务
128+阅读 · 2021年8月4日
【Manning新书】C++并行实战,592页pdf,C++ Concurrency in Action
Keras François Chollet 《Deep Learning with Python 》, 386页pdf
专知会员服务
163+阅读 · 2019年10月12日
【新书】Python编程基础,669页pdf
专知会员服务
197+阅读 · 2019年10月10日
相关资讯
Transferring Knowledge across Learning Processes
CreateAMind
29+阅读 · 2019年5月18日
计算机 | CCF推荐期刊专刊信息5条
Call4Papers
3+阅读 · 2019年4月10日
Call for Participation: Shared Tasks in NLPCC 2019
中国计算机学会
5+阅读 · 2019年3月22日
人工智能 | SCI期刊专刊信息3条
Call4Papers
5+阅读 · 2019年1月10日
Hierarchical Disentangled Representations
CreateAMind
4+阅读 · 2018年4月15日
Top
微信扫码咨询专知VIP会员