A Calculus for Relaxed Memory
A Calculus for Relaxed Memory
复制标题
放松记忆的微积分
DOI:
10.1145/2775051.2676984
复制
发表时间:
2015
影响因子:
--
通讯作者:
Michael J. Sullivan
中科院分区:
文献类型:
--
作者:
Karl Crary;Michael J. Sullivan
We propose a new approach to programming multi-core, relaxed-memory architectures in imperative, portable programming languages. Our memory model is based on explicit, programmer-specified requirements for order of execution and the visibility of writes. The compiler then realizes those requirements in the most efficient manner it can. This is in contrast to existing memory models, which---if they allow programmer control over synchronization at all---are based on inferring the execution and visibility consequences of synchronization operations or annotations in the code. We formalize our memory model in a core calculus called RMC\@. Outside of the programmer's specified requirements, RMC is designed to be strictly more relaxed than existing architectures. It employs an aggressively nondeterministic semantics for expressions, in which actions can be executed in nearly any order, and a store semantics that generalizes Sarkar et al.'s and Alglave et al.'s models of the Power architecture. We establish several results for RMC, including sequential consistency for two programming disciplines, and an appropriate notion of type safety. All our results are formalized in Coq.
影响因子:
--
作者:
Sarkar S
通讯作者:
Sarkar S
DOI:
10.1145/2429069.2429099
发表时间:
2013
期刊:
--
影响因子:
--
作者:
Batty M
通讯作者:
Batty M