A Method for Predicting Two-variable Atomicity Violations

被引:4
|
作者
Sun, Zhuo [1 ]
Zeng, Reng [2 ]
He, Xudong [1 ]
机构
[1] Florida Int Univ, Miami, FL 33199 USA
[2] Citrix Syst Inc, Ft Lauderdale, FL 33309 USA
关键词
atomicity violation; model checking; multi-threaded programs; multiple variable correlations; ARCHITECTURAL SUPPORT;
D O I
10.1109/QRS.2018.00024
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
As the most common non-deadlock concurrency bugs, atomicity violations are extremely hard to detect during testing since the exhaustive testing of a multi-threaded program is impossible because of the large number of interleavings. The studies in recent years have mainly focused on single-variable atomicity violation. However, those methods are unable to predict or find atomicity violations with multiple variables involved. Many variables are inherently correlated and need to be accessed together with their correlated peers in a consistent manner. These variables need to be either updated together consistently or accessed together to avoid inconsistent update or reading. This paper presents a method for predicting two-variable atomicity violation, based on access correlation between variables and atomicity violation pattern of variable accesses, including algorithms to infer access correlation between variables and to predict atomicity violation using model checking. The effectiveness of our method is evaluated with several real-world systems.
引用
收藏
页码:103 / 110
页数:8
相关论文
共 50 条
  • [41] Complexity of two-variable logic with counting
    Pacholski, L
    Szwast, W
    Tendera, L
    12TH ANNUAL IEEE SYMPOSIUM ON LOGIC IN COMPUTER SCIENCE, PROCEEDINGS, 1997, : 318 - 327
  • [42] ON A TWO-VARIABLE ANALOGUE OF BESSEL FUNCTIONS
    Aktas, Rabia
    Altin, Abdullah
    Cekim, Bayram
    JOURNAL OF INEQUALITIES AND SPECIAL FUNCTIONS, 2012, 3 (04): : 13 - 23
  • [43] Two-variable Logic with a Between Relation
    Krebs, Andreas
    Lodaya, Kamal
    Pandya, Paritosh
    Straubing, Howard
    PROCEEDINGS OF THE 31ST ANNUAL ACM-IEEE SYMPOSIUM ON LOGIC IN COMPUTER SCIENCE (LICS 2016), 2016, : 106 - 115
  • [44] Two-variable -1 Jacobi polynomials
    Genest, Vincent X.
    Lemay, Jean-Michel
    Vinet, Luc
    Zhedanov, Alexei
    INTEGRAL TRANSFORMS AND SPECIAL FUNCTIONS, 2015, 26 (06) : 411 - 425
  • [45] The Two-Variable Fragment with Counting Revisited
    Pratt-Hartmann, Ian
    LOGIC, LANGUAGE, INFORMATION AND COMPUTATION, 2010, 6188 : 42 - 54
  • [46] Undecidability results on two-variable logics
    Grädel, E
    Otto, M
    Rosen, E
    ARCHIVE FOR MATHEMATICAL LOGIC, 1999, 38 (4-5) : 313 - 354
  • [47] Two-variable logic on words with data
    Bojanczyk, MikolaJ
    Muscholl, Anca
    Schwentick, Thomas
    Segoufin, Luc
    David, Claire
    21ST ANNUAL IEEE SYMPOSIUM ON LOGIC IN COMPUTER SCIENCE, PROCEEDINGS, 2006, : 7 - +
  • [48] Commutativity in two - variable two-variable Jordan blocks on the Hardy space
    Izuchi, Kei Ji
    Izuchi, Kou Hei
    ACTA SCIENTIARUM MATHEMATICARUM, 2012, 78 (1-2): : 129 - 136
  • [49] Synthesizing Tests for Detecting Atomicity Violations
    Samak, Malavika
    Ramanathan, Murali Krishna
    2015 10TH JOINT MEETING OF THE EUROPEAN SOFTWARE ENGINEERING CONFERENCE AND THE ACM SIGSOFT SYMPOSIUM ON THE FOUNDATIONS OF SOFTWARE ENGINEERING (ESEC/FSE 2015) PROCEEDINGS, 2015, : 131 - 142
  • [50] Discretization of a New Method for Localizing Discontinuity Lines of a Noisy Two-Variable Function
    A. L. Ageev
    T. V. Antonova
    Proceedings of the Steklov Institute of Mathematics, 2017, 299 : 4 - 13