• DocumentCode
    3305354
  • Title

    Reducing Memory Ordering Overheads in Software Transactional Memory

  • Author

    Spear, Michael F. ; Michael, Maged M. ; Scott, Michael L. ; Wu, Peng

  • Author_Institution
    Dept. of Comput. Sci., Univ. of Rochester, Rochester, NY
  • fYear
    2009
  • fDate
    22-25 March 2009
  • Firstpage
    13
  • Lastpage
    24
  • Abstract
    Most research into high-performance software transactional memory (STM) assumes that transactions will run on a processor with a relatively strict memory model, such as Total Store Ordering (TSO). To execute these algorithms correctly on processors with relaxed memory models, explicit fence instructions may be required on every transactional access, and neither the processor nor the compiler may be able to safely reorder transactional reads. The overheads of fence instructions and read serialization are a significant but unstudied source of latency for STM, with impact on the tradeoffs among different STM systems and on the optimizations that may be possible for any given system. Straightforward ports of STM runtimes from strict to relaxed machines may fail to realize the latter´s performance potential. We explore the implementation of STM for machines with relaxed memory consistency using two recent high-performance STM systems. We propose compiler optimizations that can safely eliminate many fence instructions. Using these techniques, we obtain a reduction of up to 89% in the number of fences, and 20% in per-transaction latency, for common transactional benchmarks.
  • Keywords
    program compilers; storage management; compiler optimizations; fence instructions; memory ordering overheads; read serialization; relaxed memory consistency; software transactional memory; total store ordering; transactional access; transactional reads; Computer science; Costs; Delay; Hardware; Instruments; Memory management; Optimizing compilers; Power system modeling; Runtime; Yarn; Memory Fences; Software Transactional Memory;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    Code Generation and Optimization, 2009. CGO 2009. International Symposium on
  • Conference_Location
    Seattle, WA
  • Print_ISBN
    978-0-7695-3576-0
  • Type

    conf

  • DOI
    10.1109/CGO.2009.30
  • Filename
    4907647