Checking Just Pairs of Threads for Efficient and Scalable Incremental Verification of Multithreaded Programs

Author:

Parízek Pavel1,Kliber Filip1

Affiliation:

1. Charles University, Prague, Czech Rep

Abstract

Many techniques of automated verification target multithreaded programs, because subtle interactions between threads may trigger concurrency errors such as deadlocks and data races. However, techniques and tools involving systematic exploration of the whole space of possible thread interleavings do not scale to large software systems, despite various clever algorithmic optimizations. A viable approach is to use incremental verification techniques that, in each run, focus just on the recently modified code and the relatively small number of affected execution traces, and therefore can provide results (bug reports) very quickly. In this paper we present a new algorithm for incremental verification of multithreaded programs based on the pairwise approach, whose key idea is systematic exploration of all possible thread interleavings just for specific relevant pairs of threads. We implemented the algorithm with Java Pathfinder as the backend verification tool, and evaluated it on several multithreaded Java programs. Results show that our incremental algorithm (1) can find errors very fast, (2) greatly reduces time needed for complete safety verification, and (3) it can find the same errors as full verification of the whole state space.

Publisher

Association for Computing Machinery (ACM)

Subject

Pharmacology (medical),Complementary and alternative medicine,Pharmaceutical Science

Reference21 articles.

1. Practical detection of concurrency issues at coding time

2. E. Clarke , O. Grumberg , and D. Peled . 2000 . Model Checking. MIT Press , 2000 . E. Clarke, O. Grumberg, and D. Peled. 2000. Model Checking. MIT Press, 2000.

3. C.L. Conway , K.S. Namjoshi , D. Dams , and S.A. Edwards . 2005. Incremental Algorithms for Inter-procedural Analysis of Safety Properties . Proceedings of CAV 2005 , LNCS 3576. C.L. Conway, K.S. Namjoshi, D. Dams, and S.A. Edwards. 2005. Incremental Algorithms for Inter-procedural Analysis of Safety Properties. Proceedings of CAV 2005, LNCS 3576.

4. C. Flanagan and S. Qadeer . 2003. Thread-Modular Model Checking . Proceedings of SPIN 2003 , LNCS 2648. C. Flanagan and S. Qadeer. 2003. Thread-Modular Model Checking. Proceedings of SPIN 2003, LNCS 2648.

5. C. Flanagan and P. Godefroid . 2005 . Dynamic Partial-Order Reduction for Model Checking Software. POPL 2005 , ACM. C. Flanagan and P. Godefroid. 2005. Dynamic Partial-Order Reduction for Model Checking Software. POPL 2005, ACM.

同舟云学术

1.学者识别学者识别

2.学术分析学术分析

3.人才评估人才评估

"同舟云学术"是以全球学者为主线,采集、加工和组织学术论文而形成的新型学术文献查询和分析系统,可以对全球学者进行文献检索和人才价值评估。用户可以通过关注某些学科领域的顶尖人物而持续追踪该领域的学科进展和研究前沿。经过近期的数据扩容,当前同舟云学术共收录了国内外主流学术期刊6万余种,收集的期刊论文及会议论文总量共计约1.5亿篇,并以每天添加12000余篇中外论文的速度递增。我们也可以为用户提供个性化、定制化的学者数据。欢迎来电咨询!咨询电话:010-8811{复制后删除}0370

www.globalauthorid.com

TOP

Copyright © 2019-2024 北京同舟云网络信息技术有限公司
京公网安备11010802033243号  京ICP备18003416号-3