A programming language perspective on transactional memory consistency
A programming language perspective on transactional memory consistency
复制标题
从编程语言角度看事务内存一致性
DOI:
10.1145/2484239.2484267
复制
发表时间:
2013
期刊:
影响因子:
--
通讯作者:
N. Rinetzky
中科院分区:
文献类型:
--
作者:
H. Attiya;Alexey Gotsman;Sandeep Hans;N. Rinetzky
Transactional memory (TM) has been hailed as a paradigm for simplifying concurrent programming. While several consistency conditions have been suggested for TM, they fall short of formalizing the intuitive semantics of atomic blocks, the interface through which a TM is used in a programming language.
To close this gap, we formalize the intuitive expectations of a programmer as observational refinement between TM implementations: a concrete TM observationally refines an abstract one if every user-observable behavior of a program using the former can be reproduced if the program uses the latter. This allows the programmer to reason about the behavior of a program using the intuitive semantics formalized by the abstract TM; the observational refinement relation implies that the conclusions will carry over to the case when the program uses the concrete TM. We show that, for a particular programming language and notions of observable behavior, a variant of the well-known consistency condition of opacity is sufficient for observational refinement, and its restriction to complete histories is furthermore necessary.
Our results suggest a new approach to evaluating and comparing TM consistency conditions. They can also reduce the effort of proving that a TM implements its programming language interface correctly, by only requiring its developer to show that it satisfies the corresponding consistency condition.
影响因子:
1.1
作者:
Filipovic I
通讯作者:
Filipovic I