GC-MCR: Directed Graph Constraint-guided Concurrent Bug Detection Method

Shuochuan Li, Zan Wang, Mingxu Ma, Xiang Chen, Yingquan Zhao, Haichi Wang, Haoyu Wang
{"title":"GC-MCR: Directed Graph Constraint-guided Concurrent Bug Detection Method","authors":"Shuochuan Li, Zan Wang, Mingxu Ma, Xiang Chen, Yingquan Zhao, Haichi Wang, Haoyu Wang","doi":"10.21655/ijsi.1673-7288.00300","DOIUrl":null,"url":null,"abstract":"PDF HTML XML Export Cite reminder GC-MCR: Directed Graph Constraint-guided Concurrent Bug Detection Method DOI: 10.21655/ijsi.1673-7288.00300 Author: Affiliation: Clc Number: Fund Project: Article | Figures | Metrics | Reference | Related | Cited by | Materials | Comments Abstract:Constraint solving has been applied to many domains of program analysis and is further used in concurrent program analysis. Concurrent programs have been widely used with the rapid development of multi-core processors. However, concurrent bugs threaten the security and reliability of concurrent programs, and thus it is of great importance to detect concurrent bugs. The explosion of thread interleaving caused by the uncertainty of the execution of concurrent program threads brings some challenges to the detection of concurrent bugs. Existing concurrent defect detection algorithms reduce the exploration cost in the state space of concurrent programs by reducing invalid thread interleaving. For example, the maximal causal model algorithm transforms the state space exploration problem of concurrent programs into a constraint solving problem. However, it will produce a large number of redundant and conflicting constraints during constraint construction, which greatly prolongs the time of constraint solving, increases the number of constraint solver calls, and reduces the exploration efficiency of concurrent program state space. Thus, this study proposes a directed graph constraint-guided maximal causality reduction method, called GC-MCR. This method aims to improve the speed of constraint solving and the efficiency of the state space exploration of concurrent programs by filtering and reducing constraints using directed graphs. The experimental results show that the GC-MCR method can effectively optimize the expression of constraints, so as to improve the solving speed of the constraint solver and reduce the number of solver calls. Compared with the existing J-MCR method, GC-MCR can significantly improve the detection efficiency of concurrent program bugs without reducing the detection ability of concurrent bugs, and the test time on 38 groups of concurrent test programs widely used by existing research methods can be reduced by 34.01% on average. Reference Related Cited by","PeriodicalId":479632,"journal":{"name":"International Journal of Software and Informatics","volume":"8 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2023-01-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"0","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"International Journal of Software and Informatics","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.21655/ijsi.1673-7288.00300","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 0

Abstract

PDF HTML XML Export Cite reminder GC-MCR: Directed Graph Constraint-guided Concurrent Bug Detection Method DOI: 10.21655/ijsi.1673-7288.00300 Author: Affiliation: Clc Number: Fund Project: Article | Figures | Metrics | Reference | Related | Cited by | Materials | Comments Abstract:Constraint solving has been applied to many domains of program analysis and is further used in concurrent program analysis. Concurrent programs have been widely used with the rapid development of multi-core processors. However, concurrent bugs threaten the security and reliability of concurrent programs, and thus it is of great importance to detect concurrent bugs. The explosion of thread interleaving caused by the uncertainty of the execution of concurrent program threads brings some challenges to the detection of concurrent bugs. Existing concurrent defect detection algorithms reduce the exploration cost in the state space of concurrent programs by reducing invalid thread interleaving. For example, the maximal causal model algorithm transforms the state space exploration problem of concurrent programs into a constraint solving problem. However, it will produce a large number of redundant and conflicting constraints during constraint construction, which greatly prolongs the time of constraint solving, increases the number of constraint solver calls, and reduces the exploration efficiency of concurrent program state space. Thus, this study proposes a directed graph constraint-guided maximal causality reduction method, called GC-MCR. This method aims to improve the speed of constraint solving and the efficiency of the state space exploration of concurrent programs by filtering and reducing constraints using directed graphs. The experimental results show that the GC-MCR method can effectively optimize the expression of constraints, so as to improve the solving speed of the constraint solver and reduce the number of solver calls. Compared with the existing J-MCR method, GC-MCR can significantly improve the detection efficiency of concurrent program bugs without reducing the detection ability of concurrent bugs, and the test time on 38 groups of concurrent test programs widely used by existing research methods can be reduced by 34.01% on average. Reference Related Cited by
GC-MCR:有向图约束引导并发Bug检测方法
PDF HTML XML导出引用提示GC-MCR:有向图约束引导并发错误检测方法DOI: 10.21655/ijsi.1673-7288.00300作者:隶属关系:Clc编号:基金项目:文章|图|指标|参考|相关|引用|资料|评论摘要:约束求解已应用于程序分析的许多领域,并进一步应用于并发程序分析。随着多核处理器的迅速发展,并发程序得到了广泛的应用。然而,并发bug对并发程序的安全性和可靠性构成威胁,因此对并发bug的检测具有重要意义。由于并发程序线程执行的不确定性,导致了线程交错现象的爆发,这给并发错误的检测带来了挑战。现有的并发缺陷检测算法通过减少无效线程的交错来降低并发程序状态空间的探索成本。例如,最大因果模型算法将并发程序的状态空间探索问题转化为约束求解问题。然而,在约束构造过程中会产生大量的冗余约束和冲突约束,这大大延长了约束求解的时间,增加了约束求解器的调用次数,降低了并发程序状态空间的探索效率。因此,本研究提出了一种有向图约束引导的最大因果约简方法,称为GC-MCR。该方法利用有向图对约束进行过滤和约简,以提高并行程序的约束求解速度和状态空间探索效率。实验结果表明,GC-MCR方法可以有效地优化约束表达式,从而提高约束求解器的求解速度,减少求解器的调用次数。与现有的J-MCR方法相比,GC-MCR可以在不降低并发bug检测能力的前提下显著提高并发程序bug的检测效率,对现有研究方法广泛使用的38组并发测试程序的测试时间平均可减少34.01%。相关参考文献
本文章由计算机程序翻译,如有差异,请以英文原文为准。
求助全文
约1分钟内获得全文 求助全文
来源期刊
自引率
0.00%
发文量
0
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
确定
请完成安全验证×
copy
已复制链接
快去分享给好友吧!
我知道了
右上角分享
点击右上角分享
0
联系我们:info@booksci.cn Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。 Copyright © 2023 布克学术 All rights reserved.
京ICP备2023020795号-1
ghs 京公网安备 11010802042870号
Book学术文献互助
Book学术文献互助群
群 号:481959085
Book学术官方微信