The reads-from equivalence for the TSO and PSO memory models

Truc Lam Bui, Krishnendu Chatterjee, Tushar Gautam, Andreas Pavlogiannis, Viktor Toman

Research output: Contribution to journal/Conference contribution in journal/Contribution to newspaperConference articleResearchpeer-review

15 Downloads (Pure)

Abstract

The verification of concurrent programs remains an open challenge due to the non-determinism in inter-process communication. One recurring algorithmic problem in this challenge is the consistency verification of concurrent executions. In particular, consistency verification under a reads-from map allows to compute the reads-from (RF) equivalence between concurrent traces, with direct applications to areas such as Stateless Model Checking (SMC). Importantly, the RF equivalence was recently shown to be coarser than the standard Mazurkiewicz equivalence, leading to impressive scalability improvements for SMC under SC (sequential consistency). However, for the relaxed memory models of TSO and PSO (total/partial store order), the algorithmic problem of deciding the RF equivalence, as well as its impact on SMC, has been elusive. In this work we solve the algorithmic problem of consistency verification for the TSO and PSO memory models given a reads-from map, denoted VTSO-rf and VPSO-rf, respectively. For an execution of n events over k threads and d variables, we establish novel bounds that scale as nk+1 for TSO and as nk+1· min(nk2, 2k· d) for PSO. Moreover, based on our solution to these problems, we develop an SMC algorithm under TSO and PSO that uses the RF equivalence. The algorithm is exploration-optimal, in the sense that it is guaranteed to explore each class of the RF partitioning exactly once, and spends polynomial time per class when k is bounded. Finally, we implement all our algorithms in the SMC tool Nidhugg, and perform a large number of experiments over benchmarks from existing literature. Our experimental results show that our algorithms for VTSO-rf and VPSO-rf provide significant scalability improvements over standard alternatives. Moreover, when used for SMC, the RF partitioning is often much coarser than the standard Shasha-Snir partitioning for TSO/PSO, which yields a significant speedup in the model checking task.

Original languageEnglish
Article number164
JournalProceedings of the ACM on Programming Languages
Volume5
IssueOOPSLA
Number of pages30
ISSN2475-1421
DOIs
Publication statusPublished - Oct 2021
EventSPLASH 2021 - Chicago, United States
Duration: 17 Oct 202122 Nov 2021
https://2021.splashcon.org/

Conference

ConferenceSPLASH 2021
Country/TerritoryUnited States
CityChicago
Period17/10/202122/11/2021
Internet address

Keywords

  • concurrency
  • execution-consistency verification
  • relaxed memory models
  • stateless model checking

Fingerprint

Dive into the research topics of 'The reads-from equivalence for the TSO and PSO memory models'. Together they form a unique fingerprint.

Cite this