Batty, Mark and Memarian, Kayvan and Owens, Scott and Sarkar, Susmit and Sewell, Peter (2012) Clarifying and compiling C/C++ concurrency: from C++11 to POWER. In: Proceedings of the 39th annual ACM SIGPLAN-SIGACT symposium on Principles of programming languages. POPL Principles of Programming Languages . ACM, New York, USA, pp. 509-520. ISBN 978-1-4503-1083-3. (doi:10.1145/2103656.2103717) (KAR id:50268)
PDF
Language: English |
|
Download this file (PDF/239kB) |
|
Request a format suitable for use with assistive technology e.g. a screenreader | |
Official URL: http://dx.doi.org/10.1145/2103656.2103717 |
Abstract
The upcoming C and C++ revised standards add concurrency to the languages, for the first time, in the form of a subtle *relaxed memory model* (the *C++11 model*). This aims to permit compiler optimisation and to accommodate the differing relaxed-memory behaviours of mainstream multiprocessors, combining simple semantics for most code with high-performance *low-level atomics* for concurrency libraries. In this paper, we first establish two simpler but provably equivalent models for C++11, one for the full language and another for the subset without consume operations. Subsetting further to the fragment without low-level atomics, we identify a subtlety arising from atomic initialisation and prove that, under an additional condition, the model is equivalent to sequential consistency for race-free programs.
Item Type: | Book section |
---|---|
DOI/Identification number: | 10.1145/2103656.2103717 |
Subjects: | Q Science > QA Mathematics (inc Computing science) > QA 75 Electronic computers. Computer science |
Divisions: | Divisions > Division of Computing, Engineering and Mathematical Sciences > School of Computing |
Depositing User: | Mark Batty |
Date Deposited: | 03 Nov 2015 08:27 UTC |
Last Modified: | 05 Nov 2024 10:35 UTC |
Resource URI: | https://kar.kent.ac.uk/id/eprint/50268 (The current URI for this page, for reference purposes) |
- Link to SensusAccess
- Export to:
- RefWorks
- EPrints3 XML
- BibTeX
- CSV
- Depositors only (login required):