Taming release-Acquire consistency

Ori Lahav, Nick Giannarakis, Viktor Vafeiadis

Research output: Contribution to journalArticlepeer-review

Abstract

We introduce a strengthening of the release-Acquire fragment of the C11 memory model that (i) forbids dubious behaviors that are not observed in any implementation; (ii) supports fence instructions that restore sequential consistency; and (iii) admits an equivalent intuitive operational semantics based on point-to-point communication. This strengthening has no additional implementation cost: it allows the same local optimizations as C11 release and acquire accesses, and has exactly the same compilation schemes to the x86- TSO and Power architectures. In fact, the compilation to Power is complete with respect to a recent axiomatic model of Power; that is, the compiled program exhibits exactly the same behaviors as the source one. Moreover, we provide criteria for placing enough fence instructions to ensure sequential consistency, and apply them to an efficient RCU implementation.

Original languageEnglish
Pages (from-to)649-662
Number of pages14
JournalACM SIGPLAN Notices
Volume51
Issue number1
DOIs
StatePublished - 8 Apr 2016
Externally publishedYes

Keywords

  • C11
  • Operational semantics
  • Release-Acquire
  • Weak memory model

Fingerprint

Dive into the research topics of 'Taming release-Acquire consistency'. Together they form a unique fingerprint.

Cite this