ACM Home Page
Please provide us with feedback. Feedback
Atomicity via source-to-source translation
Full text PdfPdf (465 KB)
Source Memory System Performance archive
Proceedings of the 2006 workshop on Memory system performance and correctness table of contents
San Jose, California
SESSION: Transactional memory table of contents
Pages: 82 - 91  
Year of Publication: 2006
ISBN:1-59593-578-9
Authors
Benjamin Hindman  University of Washington
Dan Grossman  University of Washington
Sponsor
SIGPLAN: ACM Special Interest Group on Programming Languages
Publisher
ACM  New York, NY, USA
Bibliometrics
Downloads (6 Weeks): 7,   Downloads (12 Months): 42,   Citation Count: 14
Additional Information:

abstract   references   cited by   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/1178597.1178611
What is a DOI?

ABSTRACT

We present an implementation and evaluation of atomicity (also known as software transactions) for a dialect of Java. Our implementation is fundamentally different from prior work in three respects: (1) It is entirely a source-to-source translation, producing Java source code that can be compiled by any Java compiler and run on any Java Virtual Machine. (2) It can enforce "strong" atomicity without assuming special hardware or a uniprocessor. (3) The implementation uses locks rather than optimistic concurrency, but it cannot deadlock and requires inter-thread communication only when there is data contention.


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
C. Blundell, E. C. Lewis, and M. M. K. Martin. Deconstructing transactions: The subtleties of atomicity. In 4th Workshop on Duplicating, Deconstructing, and Debunking, June 2005.
5
6
 
7
R. Ennals. Software transactional memory should not be obstruction-free, 2005. http://www.cambridge.intel-research.net/ren-nais/notlockfree.pdf.
8
 
9
D. Grossman. Software transactions are to concurrency as garbage collection is to memory management. Technical Report 2006-04-01, Univ. of Washington Dept. of Comp. Sci. & Engr., Feb. 2006.
 
10
R. Guerraoui, M. Herlihy, and S. Pochon. Polymorphic contention management. In 19th International Symposium on Distributed Computing, Sept. 2005.
11
 
12
T. Harris. Exceptions and side-effects in atomic blocks. In PODC Workshop on Concurrency and Synchronization in Java Programs, July 2004.
13
14
15
16
17
 
18
B. Hindman and D. Grossman. Strong atomicity for Java without virtual-machine support. Technical Report 2006-05-01, Univ. of Washington Dept. of Computer Science & Engineering, May 2006.
 
19
20
 
21
V. J. Marathe, W. N. S. III, and M. L. Scott. Adaptive software transactional memory. In 19th International Symposium on Distributed Computing, Sept. 2005.
 
22
V. J. Marathe, M. F. Spear, C. Heriot, A. Acharya, D. Eisenstat, W. N. S. III, and M. L. Scott. Lowering the overhead of nonblocking software transactional memory. Technical Report TR 893, Computer Science Department, University of Rochester, Mar. 2006.
23
24
 
25
N. Nystrom, M. R. Clarkson, and A. C. Myers. Polyglot: An extensible compiler framework for Java. In 12th International Conference on Compiler Construction, volume 2622 of Lecture Notes in Computer Science, Apr. 2003.
26
27
 
28
N. Shavit and D. Touitou. Software transactional memory. Distributed Computing, Special Issue(10), 1997.
 
29
TRANSACT: 1st ACM SIGPLAN workshop on languages, compilers, and hardware support for transactional computing, June 2006. http://www.cs.purdue.edu/homes/jv/events/TRANSACT/.
 
30
31
 
32
A. Welc, S. Jagannathan, and A. L. Hosking. Transactional monitors for concurrent objects. In European Conference on Object-Oriented Programming, 2004.

CITED BY  14

Collaborative Colleagues:
Benjamin Hindman: colleagues
Dan Grossman: colleagues