• 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