• DocumentCode
    3617583
  • Title

    Unbounded transactional memory

  • Author

    C.S. Ananian;K. Asanovic;B.C. Kuszmaul;C.E. Leiserson;S. Lie

  • Author_Institution
    Comput. Sci. & Artificial Intelligence Lab., Massachusetts Inst. of Technol., Cambridge, MA, USA
  • fYear
    2005
  • fDate
    6/27/1905 12:00:00 AM
  • Firstpage
    316
  • Lastpage
    327
  • Abstract
    Hardware transactional memory should support unbounded transactions: transactions of arbitrary size and duration. We describe a hardware implementation of unbounded transactional memory, called UTM, which exploits the common case for performance without sacrificing correctness on transactions whose footprint can be nearly as large as virtual memory. We performed a cycle-accurate simulation of a simplified architecture, called LTM. LTM is based on UTM but is easier to implement, because it does not change the memory subsystem outside of the processor. LTM allows nearly unbounded transactions, whose footprint is limited only by physical memory size and whose duration by the length of a timeslice. We assess UTM and LTM through microbenchmarking and by automatically converting the SPECjvm98 Java benchmarks and the Linux 2.4.19 kernel to use transactions instead of locks. We use both cycle-accurate simulation and instrumentation to understand benchmark behavior. Our studies show that the common case is small transactions that commit, even when contention is high, but that some applications contain very large transactions. For example, although 99.9% of transactions in the Linux study touch 54 cache lines or fewer, some transactions touch over 8000 cache lines. Our studies also indicate that hardware support is required, because some applications spend over half their time in critical regions. Finally, they suggest that hardware support for transactions can make Java programs run faster than when run using locks and can increase the concurrency of the Linux kernel by as much as a factor of 4 with no additional programming work.
  • Keywords
    "Hardware","Turing machines","Linux","Java","Kernel","Yarn","Protocols","Transaction databases","Computer science","Artificial intelligence"
  • Publisher
    ieee
  • Conference_Titel
    High-Performance Computer Architecture, 2005. HPCA-11. 11th International Symposium on
  • ISSN
    1530-0897
  • Print_ISBN
    0-7695-2275-0
  • Type

    conf

  • DOI
    10.1109/HPCA.2005.41
  • Filename
    1385954