• DocumentCode
    2010766
  • Title

    Flexible Decoupled Transactional Memory Support

  • Author

    Shriraman, Arrvindh ; Dwarkadas, Sandhya ; Scott, Michael L.

  • Author_Institution
    Dept. of Comput. Sci., Rochester, Univ., Rochester, NY
  • fYear
    2008
  • fDate
    21-25 June 2008
  • Firstpage
    139
  • Lastpage
    150
  • Abstract
    A high-concurrency transactional memory (TM) implementation needs to track concurrent accesses, buffer speculative updates, and manage conflicts. We present a system, FlexTM (FLEXible Transactional Memory), that coordinates four decoupled hardware mechanisms: read and write signatures, which summarize per-thread access sets; per-thread conflict summary tables (CSTs), which identify the threads with which conflicts have occurred; Programmable Data Isolation, which maintains speculative updates in the local cache and employs a thread-private buffer (in virtual memory) in the rare event of overflow; and Alert-On-Update, which selectively notifies threads about coherence events. All mechanisms are software- accessible, to enable visualization and to support transactions of arbitrary length. FlexTM allows software to determine when to manage conflicts (either eagerly or lazily), and to employ a variety of conflict management and commit protocols. We describe an STM-inspired protocol that uses CSTs to manage conflicts in a distributed manner (no global arbitration) and allows parallel commits. In experiments with a prototype on Simics/GEMS, FlexTM exhibits ~5times speedup over high-quality software TM, with no loss in policy flexibility. Its distributed commit protocol is also more efficient than a central hardware manager. Our results highlight the importance of flexibility in determining when to manage conflicts: lazy maximizes concurrency and helps to ensure forward progress while eager provides better overall utilization in a multi-programmed system.
  • Keywords
    concurrency control; storage management; transaction processing; FlexTM; buffer speculative updates; flexible decoupled transactional memory support; high-concurrency transactional memory; multi-programmed system; per-thread conflict summary tables; programmable data isolation; Computer architecture; Computer science; Concurrent computing; Delay systems; Hardware; Memory management; Protocols; Read-write memory; Software prototyping; Yarn; Cache coherence; Conflict detection; FlexTM; Hardware; Multiprocessors; RTM; Transactional memory;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    Computer Architecture, 2008. ISCA '08. 35th International Symposium on
  • Conference_Location
    Beijing
  • ISSN
    1063-6897
  • Print_ISBN
    978-0-7695-3174-8
  • Type

    conf

  • DOI
    10.1109/ISCA.2008.17
  • Filename
    4556722