DocumentCode
2000897
Title
Memory Model = Instruction Reordering + Store Atomicity
Author
Arvind ; Maessen, Jan-Willem
Author_Institution
MIT CSAIL, Cambridge, MA
fYear
0
fDate
0-0 0
Firstpage
29
Lastpage
40
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 SPARCreg TSO
Keywords
graph theory; multi-threading; storage allocation; interthread communication; memory model; partially ordered execution graphs; store atomicity; thread-local instruction reordering; Coherence; Computer architecture; Gold; History; Interleaved codes; Laboratories; Power system modeling; Protocols; Sun; Yarn;
fLanguage
English
Publisher
ieee
Conference_Titel
Computer Architecture, 2006. ISCA '06. 33rd International Symposium on
Conference_Location
Boston, MA
ISSN
1063-6897
Print_ISBN
0-7695-2608-X
Type
conf
DOI
10.1109/ISCA.2006.26
Filename
1635938
Link To Document