Skip to content
Free planNo credit card requiredStart writing

article · Proceedings of the ... Conference on Parallel Architectures and Compilation Techniques/Proceedings of the Conference on Parallel Architectures and Compilation Techniques · 2007

The OpenTM Transactional Application Programming Interface

Woongki Baek, Chi Cao Minh, Martin Trautmann, Christos Kozyrakis, Kunle Olukotun

Cited by 32Abstract and details only

Abstract

Transactional Memory (TM) simplifies parallel programming by supporting atomic and isolated execution of user-identified tasks. To date, TM programming has re quired 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 coarse- grain 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.

Cite this paper

APA 7

Baek, W., Minh, C. C., Trautmann, M., Kozyrakis, C., & Olukotun, K. (2007). The OpenTM Transactional Application Programming Interface. Proceedings of the ... Conference on Parallel Architectures and Compilation Techniques/Proceedings of the Conference on Parallel Architectures and Compilation Techniques, 376–387. https://doi.org/10.1109/pact.2007.4336227

MLA 9

Baek, Woongki, et al. “The OpenTM Transactional Application Programming Interface.” Proceedings of the ... Conference on Parallel Architectures and Compilation Techniques/Proceedings of the Conference on Parallel Architectures and Compilation Techniques, 2007, pp. 376–87, https://doi.org/10.1109/pact.2007.4336227.

Chicago

Baek, Woongki, Chi Cao Minh, Martin Trautmann, Christos Kozyrakis, and Kunle Olukotun. 2007. “The OpenTM Transactional Application Programming Interface.” Proceedings of the ... Conference on Parallel Architectures and Compilation Techniques/Proceedings of the Conference on Parallel Architectures and Compilation Techniques: 376–87. https://doi.org/10.1109/pact.2007.4336227.

Harvard

Baek, W. et al. (2007) ‘The OpenTM Transactional Application Programming Interface’, Proceedings of the ... Conference on Parallel Architectures and Compilation Techniques/Proceedings of the Conference on Parallel Architectures and Compilation Techniques, pp. 376–387. Available at: https://doi.org/10.1109/pact.2007.4336227.

BibTeX
@article{baek2007opentm,
  title = {{The OpenTM Transactional Application Programming Interface}},
  author = {Baek, Woongki and Minh, Chi Cao and Trautmann, Martin and Kozyrakis, Christos and Olukotun, Kunle},
  journal = {Proceedings of the ... Conference on Parallel Architectures and Compilation Techniques/Proceedings of the Conference on Parallel Architectures and Compilation Techniques},
  pages = {376--387},
  year = {2007},
  doi = {10.1109/pact.2007.4336227}
}

Made from the index record. Check names, capitalisation and page numbers against the paper. Need another style? AI for Research has over 10,000.