TY - JOUR
T1 - Biped
T2 - Bidirectional prediction of order violations
AU - Chang, Xi
AU - Zhang, Zhuo
AU - Lei, Yan
AU - Zhao, Jianjun
N1 - Publisher Copyright:
Copyright © 2015 The Institute of Electronics, Information and Communication Engineers
PY - 2015/2/1
Y1 - 2015/2/1
N2 - Concurrency bugs do significantly affect system reliability. Although many efforts have been made to address this problem, there are still many bugs that cannot be detected because of the complexity of concurrent programs. Compared with atomicity violations, order violations are always neglected. Efficient and effective approaches to detecting order violations are therefore in urgent need. This paper presents a bidirectional predictive trace analysis approach, BIPED, which can detect order violations in parallel based on a recorded program execution. BIPED collects an expected-order execution trace into a layered bidirectional prediction model, which intensively represents two types of expected-order data flows in the bottom layer and combines the lock sets and the bidirectionally order constraints in the upper layer. BIPED then recognizes two types of candidate violation intervals driven by the bottom-layer model and then checks these recognized intervals bidirectionally based on the upper-layer constraint model. Consequently, concrete schedules can be generated to expose order violation bugs. Our experimental results show that BIPED can effectively detect real order violation bugs and the analysis speed is 2.3x-10.9x and 1.24x-1.8x relative to the state-of-the-art predictive dynamic analysis approaches and hybrid model based static prediction analysis approaches in terms of order violation bugs.
AB - Concurrency bugs do significantly affect system reliability. Although many efforts have been made to address this problem, there are still many bugs that cannot be detected because of the complexity of concurrent programs. Compared with atomicity violations, order violations are always neglected. Efficient and effective approaches to detecting order violations are therefore in urgent need. This paper presents a bidirectional predictive trace analysis approach, BIPED, which can detect order violations in parallel based on a recorded program execution. BIPED collects an expected-order execution trace into a layered bidirectional prediction model, which intensively represents two types of expected-order data flows in the bottom layer and combines the lock sets and the bidirectionally order constraints in the upper layer. BIPED then recognizes two types of candidate violation intervals driven by the bottom-layer model and then checks these recognized intervals bidirectionally based on the upper-layer constraint model. Consequently, concrete schedules can be generated to expose order violation bugs. Our experimental results show that BIPED can effectively detect real order violation bugs and the analysis speed is 2.3x-10.9x and 1.24x-1.8x relative to the state-of-the-art predictive dynamic analysis approaches and hybrid model based static prediction analysis approaches in terms of order violation bugs.
UR - http://www.scopus.com/inward/record.url?scp=84922356758&partnerID=8YFLogxK
UR - http://www.scopus.com/inward/citedby.url?scp=84922356758&partnerID=8YFLogxK
U2 - 10.1587/transinf.2014EDP7347
DO - 10.1587/transinf.2014EDP7347
M3 - Article
AN - SCOPUS:84922356758
SN - 0916-8532
VL - E98D
SP - 334
EP - 345
JO - IEICE Transactions on Information and Systems
JF - IEICE Transactions on Information and Systems
IS - 2
ER -