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
下载
关闭预览

相关内容

专知会员服务
123+阅读 · 2021年8月4日
【Manning新书】C++并行实战,592页pdf,C++ Concurrency in Action
Linux导论,Introduction to Linux,96页ppt
专知会员服务
77+阅读 · 2020年7月26日
Keras François Chollet 《Deep Learning with Python 》, 386页pdf
专知会员服务
151+阅读 · 2019年10月12日
【新书】Python编程基础,669页pdf
专知会员服务
194+阅读 · 2019年10月10日
最新BERT相关论文清单,BERT-related Papers
专知会员服务
52+阅读 · 2019年9月29日
.NET Core 原生DI+AOP实现注解式编程
DotNet
8+阅读 · 2019年9月9日
Transferring Knowledge across Learning Processes
CreateAMind
27+阅读 · 2019年5月18日
计算机 | CCF推荐期刊专刊信息5条
Call4Papers
3+阅读 · 2019年4月10日
人工智能 | ISAIR 2019诚邀稿件(推荐SCI期刊)
Call4Papers
6+阅读 · 2019年4月1日
Call for Participation: Shared Tasks in NLPCC 2019
中国计算机学会
5+阅读 · 2019年3月22日
人工智能 | SCI期刊专刊信息3条
Call4Papers
5+阅读 · 2019年1月10日
A Technical Overview of AI & ML in 2018 & Trends for 2019
待字闺中
16+阅读 · 2018年12月24日
实战 | 用Python做图像处理(二)
七月在线实验室
17+阅读 · 2018年5月25日
Hierarchical Disentangled Representations
CreateAMind
4+阅读 · 2018年4月15日
计算机类 | 期刊专刊截稿信息9条
Call4Papers
4+阅读 · 2018年1月26日
Arxiv
0+阅读 · 2021年10月13日
Arxiv
3+阅读 · 2017年12月18日
VIP会员
相关VIP内容
专知会员服务
123+阅读 · 2021年8月4日
【Manning新书】C++并行实战,592页pdf,C++ Concurrency in Action
Linux导论,Introduction to Linux,96页ppt
专知会员服务
77+阅读 · 2020年7月26日
Keras François Chollet 《Deep Learning with Python 》, 386页pdf
专知会员服务
151+阅读 · 2019年10月12日
【新书】Python编程基础,669页pdf
专知会员服务
194+阅读 · 2019年10月10日
最新BERT相关论文清单,BERT-related Papers
专知会员服务
52+阅读 · 2019年9月29日
相关资讯
.NET Core 原生DI+AOP实现注解式编程
DotNet
8+阅读 · 2019年9月9日
Transferring Knowledge across Learning Processes
CreateAMind
27+阅读 · 2019年5月18日
计算机 | CCF推荐期刊专刊信息5条
Call4Papers
3+阅读 · 2019年4月10日
人工智能 | ISAIR 2019诚邀稿件(推荐SCI期刊)
Call4Papers
6+阅读 · 2019年4月1日
Call for Participation: Shared Tasks in NLPCC 2019
中国计算机学会
5+阅读 · 2019年3月22日
人工智能 | SCI期刊专刊信息3条
Call4Papers
5+阅读 · 2019年1月10日
A Technical Overview of AI & ML in 2018 & Trends for 2019
待字闺中
16+阅读 · 2018年12月24日
实战 | 用Python做图像处理(二)
七月在线实验室
17+阅读 · 2018年5月25日
Hierarchical Disentangled Representations
CreateAMind
4+阅读 · 2018年4月15日
计算机类 | 期刊专刊截稿信息9条
Call4Papers
4+阅读 · 2018年1月26日
Top
微信扫码咨询专知VIP会员