This Article 
   
 Share 
   
 Bibliographic References 
   
 Add to: 
 
Digg
Furl
Spurl
Blink
Simpy
Google
Del.icio.us
Y!MyWeb
 
 Search 
   
16th International Conference on Parallel Architecture and Compilation Techniques (PACT 2007)
The OpenTM Transactional Application Programming Interface
Brasov, Romania
September 15-September 19
ISBN: 0-7695-2944-5
Woongki Baek, Stanford University, USA
Chi Cao Minh, Stanford University, USA
Martin Trautmann, Stanford University, USA
Christos Kozyrakis, Stanford University, USA
Kunle Olukotun, Stanford University, USA
Transactional Memory (TM) simplifies parallel programming by supporting atomic and isolated execution of user-identified tasks. To date, TM programming has required the use of libraries that make it difficult to achieve scalable performance with code that is easy to develop and maintain. For TM programming to become practical, it is important to integrate TM into familiar, high-level environments for parallel programming.

This paper presents OpenTM, an application programming interface (API) for parallel programming with transactions. OpenTM extends OpenMP, a widely used API for shared-memory parallel programming, with a set of compiler directives to express non-blocking synchronization and speculative parallelization based on memory transactions. We also present a portable OpenTM implementation that produces code for hardware, software, and hybrid TM systems. The implementation builds upon the OpenMP support in the GCC compiler and includes a runtime for the C programming language.

We evaluate the performance and programmability features of OpenTM. We show that it delivers the performance of fine-grain locks at the programming simplicity of coarsegrain locks. Compared to transactional programming with lower-level interfaces, it removes the burden of manual annotations for accesses to shared variables and enables easy changes of the scheduling and contention management policies. Overall, OpenTM provides a practical and efficient TM programming environment within the familiar scope of OpenMP.

Citation:
Woongki Baek, Chi Cao Minh, Martin Trautmann, Christos Kozyrakis, Kunle Olukotun, "The OpenTM Transactional Application Programming Interface," pact, pp.376-387, 16th International Conference on Parallel Architecture and Compilation Techniques (PACT 2007), 2007
Usage of this product signifies your acceptance of the Terms of Use.