Skip to main content
Erschienen in:
Buchtitelbild

Open Access 2020 | OriginalPaper | Buchkapitel

Modular Relaxed Dependencies in Weak Memory Concurrency

verfasst von : Marco Paviotti, Simon Cooksey, Anouk Paradis, Daniel Wright, Scott Owens, Mark Batty

Erschienen in: Programming Languages and Systems

Verlag: Springer International Publishing

loading …

We present a denotational semantics for weak memory concurrency that avoids thin-air reads, provides data-race free programs with sequentially consistent semantics (DRF-SC), and supports a compositional refinement relation for validating optimisations. Our semantics identifies false program dependencies that might be removed by compiler optimisation, and leaves in place just the dependencies necessary to rule out thin-air reads. We show that our dependency calculation can be used to rule out thin-air reads in any axiomatic concurrency model, in particular C++. We present a tool that automatically evaluates litmus tests, show that we can augment C++ to fix the thin-air problem, and we prove that our augmentation is compatible with the previously used compilation mappings over key processor architectures. We argue that our dependency calculation offers a practical route to fixing the longstanding problem of thin-air reads in the C++ specification.

download
DOWNLOAD
print
DRUCKEN
Metadaten
Titel
Modular Relaxed Dependencies in Weak Memory Concurrency
verfasst von
Marco Paviotti
Simon Cooksey
Anouk Paradis
Daniel Wright
Scott Owens
Mark Batty
Copyright-Jahr
2020
DOI
https://doi.org/10.1007/978-3-030-44914-8_22