Affiliation:
1. MIT CSAIL
2. Sun Microsystems Laboratories, Burlington, MA
Abstract
We present a novel framework for defining memory models in terms of two properties: thread-local Instruction Reordering axioms and Store Atomicity, which describes inter-thread communication via memory. Most memory models have the store atomicity property, and it is this property that is enforced by cache coherence protocols. A memory model with Store Atomicity is serializable; there is a unique global interleaving of all operations which respects the reordering rules. Our framework uses partially ordered execution graphs; one graph represents many instruction interleavings with identical behaviors. The major contribution of this framework is a procedure for enumerating program behaviors in any memory model with Store Atomicity. Using this framework, we show that address aliasing speculation introduces new program behaviors; we argue that these new behaviors should be permitted by the memory model specification. We also show how to extend our model to capture the behavior of non-atomic memory models such as SPARC R TSO.
Publisher
Association for Computing Machinery (ACM)
Cited by
12 articles.
订阅此论文施引文献
订阅此论文施引文献,注册后可以免费订阅5篇论文的施引文献,订阅后可以查看论文全部施引文献
1. Parallelized Sequential Composition and Hardware Weak Memory Models;Software Engineering and Formal Methods;2021
2. Speculative Enforcement of Store Atomicity;2020 53rd Annual IEEE/ACM International Symposium on Microarchitecture (MICRO);2020-10
3. Simplifying ARM concurrency: multicopy-atomic axiomatic and operational models for ARMv8;Proceedings of the ACM on Programming Languages;2018-01
4. Weak Memory Models: Balancing Definitional Simplicity and Implementation Flexibility;2017 26th International Conference on Parallel Architectures and Compilation Techniques (PACT);2017-09
5. Post-Silicon Validation of Multiprocessor Memory Consistency;IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems;2015-06