ACM Home Page
Please provide us with feedback. Feedback
Single global lock semantics in a weakly atomic STM
Full text PdfPdf (938 KB)
Source
ACM SIGPLAN Notices archive
Volume 43 ,  Issue 5  (May 2008) table of contents
COLUMN: Workshop on transactional computing (Transact 2008) table of contents
Pages 15-26  
Year of Publication: 2008
ISSN:0362-1340
Authors
Vijay Menon  Intel Labs, Santa Clara, CA
Steven Balensiefer  University of Washington, Seattle, WA
Tatiana Shpeisman  Intel Labs, Santa Clara, CA
Ali-Reza Adl-Tabatabai  Intel Labs, Santa Clara, CA
Richard L. Hudson  Intel Labs, Santa Clara, CA
Bratin Saha  Intel Labs, Santa Clara, CA
Adam Welc  Intel Labs, Santa Clara, CA
Publisher
ACM  New York, NY, USA
Bibliometrics
Downloads (6 Weeks): 9,   Downloads (12 Months): 66,   Citation Count: 0
Additional Information:

abstract   references   index terms   collaborative colleagues  

Tools and Actions: Review this Article  
DOI Bookmark: Use this link to bookmark this Article: http://doi.acm.org/10.1145/1402227.1402235
What is a DOI?

ABSTRACT

As memory transactions have been proposed as a language-level replacement for locks, there is growing need for well-defined semantics. In contrast to database transactions, transaction memory (TM) semantics are complicated by the fact that programs may access the same memory locations both inside and outside transactions. Strongly atomic semantics, where non-transactional accesses are treated as implicit single-operation transactions, remain difficult to provide without specialized hardware support and/or significant performance overhead. As an alternative, many in the community have informally proposed that a single global lock semantics [16, 9], where transaction semantics are mapped to those of regions protected by a single global lock, provide an intuitive and efficiently implementable model for programmers.

In this paper, we explore the implementation and performance implications of single global lock semantics in a weakly atomic STM from the perspective of Java, and we discuss why even recent STM implementations fall short of these semantics. We describe a new weakly atomic Java STM implementation that provides single global lock semantics while permitting concurrent execution, but we show that this comes at a significant performance cost. We also propose and implement various alternative semantics that loosen single lock requirements while still providing strong guarantees. We compare our new implementations to previous ones, including a strongly atomic STM. [22]


REFERENCES

Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.

1
2
 
3
 
4
 
5
C. Blundell, E. C. Lewis, and M. M. K. Martin. Deconstructing transactions: The subtleties of atomicity. In Fourth Annual Workshop on Duplicating, Deconstructing, and Debunking, 2005.
 
6
H. Boehm. A memory model for c++: Strawman proposal. In C++ standards committee paper WG21/N1942, February 2006. http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2006/n1942.html.
 
7
D. Dice, O. Shalev, and N. Shavit. Transactional Locking II. In DISC 2006.
 
8
9
10
11
12
13
 
14
Intel Corporation. Intel 64 Architecture Memory Ordering White Paper. http://www.intel.com/products/processor/manuals/318147.pdf.
 
15
 
16
J. Larus and R. Rajwar. Transactional Memory. Morgan & Claypool Publishers, 2006.
17
 
18
V. Menon, S. Balensiefer, T. Shpeisman, A.-R. Adl-Tabatabai, R. L. Hudson, B. Saha, and A. Welc. Towards a lock-based semantics for Java STM. Technical Report UW-CSE-07-11-01, November 2007.
 
19
K. E. Moore, J. Bobba, M. J. Moravan, M. D. Hill, and D. A. Wood. LogTM: Log-based transactional memory. In HPCA 2006.
20
21
22
23
 
24
M. F. Spear, V. J. Marathe, L. Dalessandro, and M. L. Scott. Privatization techniques for software transactional memory. Technical Report 915, University of Rochester, Computer Science Dept., 2007.
 
25
H. Sutter. Prism - A Principle-Based Sequential Memory Model for Microsoft Native Code Platforms Draft Version 0.9.1. http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2006/n2075.pdf, September 2006.
 
26

Collaborative Colleagues:
Vijay Menon: colleagues
Steven Balensiefer: colleagues
Tatiana Shpeisman: colleagues
Ali-Reza Adl-Tabatabai: colleagues
Richard L. Hudson: colleagues
Bratin Saha: colleagues
Adam Welc: colleagues