Partial-coherence abstractions for relaxed memory models

Michael Kuperstein, Martin Vechev, Eran Yahav

Research output: Chapter in Book/Report/Conference proceedingConference contributionpeer-review

Abstract

We present an approach for automatic verification and fence inference in concurrent programs running under relaxed memory models. Verification under relaxed memory models is a hard problem. Given a finite state program and a safety specification, verifying that the program satisfies the specification under a sufficiently relaxed memory model is undecidable. For stronger models, the problem is decidable but has non-primitive recursive complexity. In this paper, we focus on models that have store-buffer based semantics, e.g., SPARC TSO and PSO. We use abstract interpretation to provide an effective verification procedure for programs running under this type of models. Our main contribution is a family of novel partial-coherence abstractions, specialized for relaxed memory models, which partially preserve information required for memory coherence and consistency. We use our abstractions to automatically verify programs under relaxed memory models. In addition, when a program violates its specification but can be fixed by adding fences, our approach can automatically infer a correct fence placement that is optimal under the abstraction. We implemented our approach in a tool called BLENDER and applied it to verify and infer fences in several concurrent algorithms.

Original languageEnglish
Title of host publicationPLDI'11 - Proceedings of the 2011 ACM Conference on Programming Language Design and Implementation
Pages187-198
Number of pages12
DOIs
StatePublished - 2011
Event32nd ACM SIGPLAN Conference on Programming Language Design and Implementation, PLDI'11 - San Jose, CA, United States
Duration: 4 Jun 20118 Jun 2011

Publication series

NameProceedings of the ACM SIGPLAN Conference on Programming Language Design and Implementation (PLDI)

Conference

Conference32nd ACM SIGPLAN Conference on Programming Language Design and Implementation, PLDI'11
Country/TerritoryUnited States
CitySan Jose, CA
Period4/06/118/06/11

Keywords

  • abstract interpretation
  • concurrency
  • relaxed memory models
  • synthesis
  • weak memory models

All Science Journal Classification (ASJC) codes

  • Software

Fingerprint

Dive into the research topics of 'Partial-coherence abstractions for relaxed memory models'. Together they form a unique fingerprint.

Cite this