• Home
  • Search
  • Parsimonious Optimal Dynamic Partial Order Reduction
  • Cite Icon3
  • https://doi.org/10.1007/978-3-031-65630-9_2Copy DOI Icon

Parsimonious Optimal Dynamic Partial Order Reduction

  • Jan 1, 2024
  • Parosh Aziz Abdulla +4 more
Show More
  • Abstract
  • PDF
  • Literature Map
  • References
  • Citations
  • Similar Papers
Abstract

Abstract Stateless model checking is a fully automatic verification technique for concurrent programs that checks for safety violations by exploring all possible thread schedulings. It becomes effective when coupled with Dynamic Partial Order Reduction (DPOR), which introduces an equivalence on schedulings and reduces the amount of needed exploration. DPOR algorithms that are optimal are particularly effective in that they guarantee to explore exactly one execution from each equivalence class. Unfortunately, existing sequence-based optimal algorithms may in the worst case consume memory that is exponential in the size of the analyzed program. In this paper, we present Parsimonious-OPtimal DPOR (POP), an optimal DPOR algorithm for analyzing multi-threaded programs under sequential consistency, whose space consumption is polynomial in the worst case. POP combines several novel algorithmic techniques, including (i) a parsimonious race reversal strategy, which avoids multiple reversals of the same race, (ii) an eager race reversal strategy to avoid storing initial fragments of to-be-explored executions, and (iii) a space-efficient scheme for preventing redundant exploration, which replaces the use of sleep sets. Our implementation in Nidhugg shows that these techniques can significantly speed up the analysis of concurrent programs, and do so with low memory consumption. Comparison to TruSt, a related optimal DPOR algorithm that represents executions as graphs, shows that POP ’s implementation achieves similar performance for smaller benchmarks, and scales much better than TruSt ’s on programs with long executions.

Loading PDF

Similar Papers
  • Conference Article
  • Citations33

Improving Dynamic Partial Order Reductions for Concolic Testing

  • Jun 01, 2012
  • Olli Saarikivi +2
  • Book Chapter
  • Citations49

Evaluating Ordering Heuristics for Dynamic Partial-Order Reduction Techniques

  • Jan 01, 2010
  • Steven Lauterburg +3
  • Research Article
  • Citations2

Optimal dynamic partial order reduction with context-sensitive independence and observers

  • Apr 29, 2023
  • Journal of Systems and Software
  • Elvira Albert +4
  • Conference Article
  • Citations48

Maximal causality reduction for TSO and PSO

  • Oct 19, 2016
  • Shiyou Huang +1
  • Book Chapter
  • Citations17

Predicting Serializability Violations: SMT-Based Search vs. DPOR-Based Search

  • Jan 01, 2012
  • Arnab Sinha +3
  • Research Article
  • Citations210

Reducing concurrent analysis under a context bound to sequential analysis

  • Jul 07, 2009
  • Formal Methods in System Design
  • Akash Lal +1
  • Conference Article
  • Citations25

MCC: A runtime verification tool for MCAPI user applications

  • Nov 01, 2009
  • Subodh Sharma +3
  • Research Article
  • Citations13

Full simulation coverage for SystemC transaction-level models of systems-on-a-chip

  • Jun 09, 2009
  • Formal Methods in System Design
  • C Helmstetter +2
  • Book Chapter
  • Citations5

Resource-Oriented Deadlock Analysis

  • Sep 08, 2007
  • Lee Naish
  • Book Chapter
  • Citations6

Locality-Based Abstractions

  • Jan 01, 2005
  • Javier Esparza +2
  • Book Chapter
  • Citations2

Partial Order Reductions

  • Jan 01, 2000
  • Doron Peled
  • Conference Article
  • Citations3

Impact of Instruction Re-Ordering on the Correctness of Shared-Memory Programs

  • Dec 07, 2005
  • L Higham +1
  • Book Chapter
  • Citations37

Partial order reduction: Model-checking using representatives

  • Jan 01, 1996
  • Doron Peled
  • Research Article
  • Citations2

Kima - an Automated Error Correction System for Concurrent Logic Programs.

  • Jan 01, 2000
  • Computer Software
  • Yasuhiro Ajiro +1
  • Conference Article
  • Citations2

Equivalence Classes in Performance Evaluation Programming

  • Dec 01, 2021
  • Eneia Nicolae Todoran
Cactus Communications logo

Copyright 2026 Cactus Communications. All rights reserved.