Biped: Bidirectional prediction of order violations

Xi Chang, Zhuo Zhang, Yan Lei, Jianjun Zhao

Research output: Contribution to journalArticle

Abstract

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.

Original languageEnglish
Pages (from-to)334-345
Number of pages12
JournalIEICE Transactions on Information and Systems
VolumeE98D
Issue number2
DOIs
Publication statusPublished - Feb 1 2015

Fingerprint

Trace analysis
Dynamic analysis
Concretes

All Science Journal Classification (ASJC) codes

  • Software
  • Hardware and Architecture
  • Computer Vision and Pattern Recognition
  • Electrical and Electronic Engineering
  • Artificial Intelligence

Cite this

Biped : Bidirectional prediction of order violations. / Chang, Xi; Zhang, Zhuo; Lei, Yan; Zhao, Jianjun.

In: IEICE Transactions on Information and Systems, Vol. E98D, No. 2, 01.02.2015, p. 334-345.

Research output: Contribution to journalArticle

Chang, Xi ; Zhang, Zhuo ; Lei, Yan ; Zhao, Jianjun. / Biped : Bidirectional prediction of order violations. In: IEICE Transactions on Information and Systems. 2015 ; Vol. E98D, No. 2. pp. 334-345.
@article{7139c733a9a94bd09ad47cb0ca0ba145,
title = "Biped: Bidirectional prediction of order violations",
abstract = "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.",
author = "Xi Chang and Zhuo Zhang and Yan Lei and Jianjun Zhao",
year = "2015",
month = "2",
day = "1",
doi = "10.1587/transinf.2014EDP7347",
language = "English",
volume = "E98D",
pages = "334--345",
journal = "IEICE Transactions on Information and Systems",
issn = "0916-8532",
publisher = "一般社団法人電子情報通信学会",
number = "2",

}

TY - JOUR

T1 - Biped

T2 - Bidirectional prediction of order violations

AU - Chang, Xi

AU - Zhang, Zhuo

AU - Lei, Yan

AU - Zhao, Jianjun

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

VL - E98D

SP - 334

EP - 345

JO - IEICE Transactions on Information and Systems

JF - IEICE Transactions on Information and Systems

SN - 0916-8532

IS - 2

ER -