Bounded Partial-Order Reduction

被引:2
|
作者
Coons, Katherine E. [1 ]
Musuvathi, Madanlal
McKinley, Kathryn S. [1 ]
机构
[1] Univ Texas Austin, Austin, TX 78712 USA
关键词
Algoirthms; Verification; bounded partial-order reduction; dynamic partial-order reduction; concurrency; fairness; liveness; model checking; shared-memory programs; software testing;
D O I
10.1145/2544173.2509556
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Eliminating concurrency errors is increasingly important as systems rely more on parallelism for performance. Exhaustively exploring the state-space of a program's thread interleavings finds concurrency errors and provides coverage guarantees, but suffers from exponential state-space explosion. Two prior approaches alleviate state-space explosion. (1) Dynamic partial-order reduction (DPOR) provides full coverage and explores only one interleaving of independent transitions. (2) Bounded search provides bounded coverage by enumerating interleavings that do not exceed a bound. In particular, we focus on preemption-bounding. Combining partial-order reduction with preemption-bounding had remained an open problem. We show that preemption-bounded search explores the same partial orders repeatedly and consequently explores more executions than unbounded DPOR, even for small bounds. We further show that if DPOR simply uses the preemption bound to prune the state space as it explores new partial orders, it misses parts of the state space reachable in the bound and is therefore unsound. The bound essentially induces dependences between otherwise independent transitions in the DPOR state space. We introduce Bounded Partial Order Reduction (BPOR), a modification of DPOR that compensates for bound dependences. We identify properties that determine how well bounds combine with partial-order reduction. We prove sound coverage and empirically evaluate BPOR with preemption and fairness bounds. We show that by eliminating redundancies, BPOR significantly reduces testing time compared to bounded search. BPOR's faster incremental guarantees will help testers verify larger concurrent programs.
引用
收藏
页码:833 / 848
页数:16
相关论文
共 50 条
  • [31] Deciding global partial-order properties
    Alur, R
    McMillan, K
    Peled, D
    [J]. FORMAL METHODS IN SYSTEM DESIGN, 2005, 26 (01) : 7 - 25
  • [32] Deciding Global Partial-Order Properties
    Rajeev Alur
    Ken McMillan
    Doron Peled
    [J]. Formal Methods in System Design, 2005, 26 : 7 - 25
  • [33] HiPOP: Hierarchical Partial-Order Planning
    Bechon, Patrick
    Barbier, Magali
    Infantes, Guillaume
    Lesire, Charles
    Vidal, Vincent
    [J]. STAIRS 2014, 2014, 264 : 51 - 60
  • [34] Combining Partial-Order Reduction and Symbolic Model Checking to Verify LTL Properties
    Vander Meulen, Jose
    Pecheur, Charles
    [J]. NASA FORMAL METHODS, 2011, 6617 : 406 - +
  • [35] Partial-Order Reduction for Parity Games with an Application on Parameterised Boolean Equation Systems
    Neele, Thomas
    Willemse, Tim A. C.
    Wesselink, Wieger
    [J]. TOOLS AND ALGORITHMS FOR THE CONSTRUCTION AND ANALYSIS OF SYSTEMS, PT II, TACAS 2020, 2020, 12079 : 307 - 324
  • [36] Deciding global partial-order properties
    Alur, R
    McMillan, K
    Peled, D
    [J]. AUTOMATA, LANGUAGES AND PROGRAMMING, 1998, 1443 : 41 - 52
  • [37] Partial-order reduction in model checking object-oriented Petri nets
    Ceska, M
    Hasa, L
    Vojnar, T
    [J]. COMPUTER AIDED SYSTEMS THEORY - EUROCAST 2003, 2003, 2809 : 265 - 278
  • [38] Partial-Order Reduction for Performance Analysis of Max-Plus Timed Systems
    van der Sanden, Bram
    Geilen, Marc
    Reniers, Michel
    Basten, Twan
    [J]. 2018 18TH INTERNATIONAL CONFERENCE ON APPLICATION OF CONCURRENCY TO SYSTEM DESIGN (ACSD), 2018, : 40 - 49
  • [39] Improving spin's partial-order reduction for breadth-first search
    Bosnacki, D
    Holzmann, GJ
    [J]. MODEL CHECKING SOFTWARE, PROCEEDINGS, 2005, 3639 : 91 - 105
  • [40] Flaw selection strategies for partial-order planning
    Pollack, ME
    Joslin, D
    Paolucci, M
    [J]. JOURNAL OF ARTIFICIAL INTELLIGENCE RESEARCH, 1997, 6 : 223 - 262