Towards transactional memory for OpenMP
Document typeConference report
Rights accessOpen Access
The OpenMP specification lacks a composable shared memory concurrency mechanism: the current OpenMP concurrency mechanisms, such as OMP critical, locks, or atomics, do not support composition. In this paper, we motivate the need for transactional memory (TM) in OpenMP. The chief reason is to support composition of realistic programs, but we also consider whether TM is easier to program than locks, the use case for TM, and whether a software-only TM can outperform traditional locking through a survey of recent publications. This paper advances upon previous proposals of OpenMP TM by introducing a new construct specifically to handle irrevocable actions, which is also composable. It also proposes a pure atomic transaction construct as well as the concept of transaction safety. Further, we examine how our proposed construct integrates with current OpenMP constructs.
CitationWong, M. [et al.]. Towards transactional memory for OpenMP. A: International Workshop on OpenMP. "Using and Improving OpenMP for Devices, Tasks, and More 10th International Workshop on OpenMP, IWOMP 2014 Salvador, Brazil, September 28-30, 2014: proceedings". Salvador: Springer, 2014, p. 130-145.