loading...
 This Article 
   
 Share 
   
 Bibliographic References 
   
 Add to: 
 
Digg
Furl
Spurl
Blink
Simpy
Google
Del.icio.us
Y!MyWeb
 
 Search 
   
39th Annual IEEE/ACM International Symposium on Microarchitecture (MICRO'06)
Architectural Support for Software Transactional Memory
Orlando, Florida, USA
December 09-December 13
ISBN: 0-7695-2732-9
Bratin Saha, Microprocessor Technology Lab, Intel Corporation
Ali-Reza Adl-Tabatabai, Microprocessor Technology Lab, Intel Corporation
Quinn Jacobson, Microprocessor Technology Lab, Intel Corporation

Transactional memory provides a concurrency control mechanism that avoids many of the pitfalls of lock-based synchronization. Researchers have proposed several different implementations of transactional memory, broadly classified into software transactional memory (STM) and hardware transactional memory (HTM). Both approaches have their pros and cons: STMs provide rich and flexible transactional semantics on stock processors but incur significant overheads. HTMs, on the other hand, provide high performance but implement restricted semantics or add significant hardware complexity.

This paper is the first to propose architectural support for accelerating transactions executed entirely in software. We propose instruction set architecture (ISA) extensions and novel hardware mechanisms that improve STM performance. We adapt a high-performance STM algorithm supporting rich transactional semantics to our ISA extensions (called hardware accelerated software transactional memory or HASTM). HASTM accelerates fully virtualized nested transactions, supports language integration, and provides both object-based and cache-line based conflict detection. We have implemented HASTM in an accurate multi-core IA32 simulator. Our simulation results show that (1) HASTM single-thread performance is comparable to a conventional HTM implementation; (2) HASTM scaling is comparable to a STM implementation; and (3) HASTM is resilient to spurious aborts and can scale better than HTM in a multi-core setting. Thus, HASTM provides the flexibility and rich semantics of STM, while giving the performance of HTM.

Citation:
Bratin Saha, Ali-Reza Adl-Tabatabai, Quinn Jacobson, "Architectural Support for Software Transactional Memory," micro, pp.185-196, 39th Annual IEEE/ACM International Symposium on Microarchitecture (MICRO'06), 2006
Usage of this product signifies your acceptance of the Terms of Use.