ACM Home Page
Please provide us with feedback. Feedback
NZTM: nonblocking zero-indirection transactional memory
Full text PdfPdf (719 KB)
Source
ACM Symposium on Parallel Algorithms and Architectures archive
Proceedings of the twenty-first annual symposium on Parallelism in algorithms and architectures table of contents
Calgary, AB, Canada
SESSION: Transactional memory II table of contents
Pages 204-213  
Year of Publication: 2009
ISBN:978-1-60558-606-9
Authors
Fuad Tabba  University of Auckland, Auckland, New Zealand
Mark Moir  Sun Microsystems Laboratories, Burlington, MA, USA
James R. Goodman  University of Auckland, Auckland, New Zealand
Andrew W. Hay  University of Auckland, Auckland, New Zealand
Cong Wang  University of Wisconsin, Madison, WI, USA
Sponsors
SIGOPS: ACM Special Interest Group on Operating Systems
ACM: Association for Computing Machinery
SIGACT: ACM Special Interest Group on Algorithms and Computation Theory
Publisher
ACM  New York, NY, USA
Bibliometrics
Downloads (6 Weeks): 70,   Downloads (12 Months): 97,   Citation Count: 0
Additional Information:

abstract   references   index terms   collaborative colleagues  

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

ABSTRACT

This paper introduces NZTM, a nonblocking, zero-indirection, object-based, hybrid transactional memory system. NZTM comprises a nonblocking software transactional memory (STM) system that can exploit best-effort hardware transactional memory (HTM) if available to improve performance.

Most previous nonblocking software transactional memory implementations pay a significant performance cost in the common case, as compared to simpler, blocking ones. However, blocking is problematic in some cases and unacceptable in others. NZTM is nonblocking, but shares the advantages of recent blocking STM proposals in the common case: it stores object data "in place", avoiding the costly levels of indirection of previous nonblocking STMs, and improves cache performance by collocating object metadata with the data it controls.

We also explain how our nonblocking NZSTM algorithm can be substantially simplified using very simple hardware transactions, and evaluate its performance on Sun's forthcoming Rock processor. Our results show that nonblocking support introduces little overhead when compared with blocking STMs, and that NZTM is competitive with LogTM-SE, an unbounded HTM.


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
C. S. Ananian and M. Rinard. Efficient object-based software transactions. Synchronization and Concurrency in Object-Oriented Languages, 2005.
3
4
 
5
 
6
L. Dalessandro, V. Marathe, M. Spear, and M. L. Scott. Capabilities and limitations of library-based software transactional memory in C++. TRANSACT, 2007.
7
8
 
9
D. Dice, Y. Lev, M. Moir, and D. Nussbaum. Early experience with a commercial hardware transactional memory implementation. Technical Report TR-2009-180, Sun Microsystems Laboratories, 2009.
 
10
D. Dice, O. Shalev, and N. Shavit. Transactional locking II. In Proc. 20th Intl. Symp. on Distributed Computing, September 2006.
 
11
R. Ennals. Software transactional memory should not be obstruction-free, 2005. http://berkeley.intel-research.net/rennals/pubs/052RobEnnals.pdf.
 
12
K. Fraser. Practical Lock-Freedom. PhD thesis, Cambridge University Technical Report UCAM-CL-TR-579, Cambridge, England, Feb. 2004.
 
13
 
14
A. Ghuloum. Unwelcome advice, 2008. http://blogs.intel.com/research/2008/06/unwelcome_advice.php.
15
 
16
 
17
18
19
20
 
21
G. J. Holzmann. The SPIN Model Checker. Addison-Wesley Professional, 2003.
 
22
G. Koch. Discovering multi-core: Extending the benefits of Moore's law. Technology, 2005.
 
23
 
24
Y. Lev and M. Moir. Fast read sharing mechanism for software transactional memory, 2004. http://research.sun.com/scalable/pubs/PODC04-Poster.pdf.
 
25
26
 
27
V. Marathe, W. N. Scherer III, and M. L. Scott. Adaptive software transactional memory. In Proc. 19th Intl. Symp. on Distributed Computing, September 2005.
 
28
V. J. Marathe, M. F. Spear, C. Heriot, A. Acharya, D. Eisenstat, W. N. Scherer III, and M. L. Scott. Lowering the overhead of nonblocking software transactional memory. 2006.
29
 
30
C. C. Minh, J. Chung, C. Kozyrakis, and K. Olukotun. STAMP: Stanford transactional applications for multi-processing. IEEE International Symposium on Workload Characterization, 2008. IISWC 2008., pages 35--46, 2008.
31
 
32
M. Moir. Hybrid transactional memory, July 2005. http://research.sun.com/scalable/pubs/Moir-Hybrid-2005.pdf.
 
33
M. Moir, K. E. Moore, and D. Nussbaum. The adaptive transactional memory test platform: A tool for experimenting with transactional code for Rock. The third annual SIGPLAN Workshop on Transactional Memory, 2008.
 
34
K. E. Moore, J. Bobba, M. J. Moravan, M. D. Hill, and D. A. Wood. LogTM: Log-based transactional memory. In Proc. 12th Annual International Symposium on High Performance Computer Architecture, 2006.
35
36
37
38
 
39
N. Shavit and D. Touitou. Software transactional memory. Distributed Computing, Special Issue(10):99--116, 1997.
40
 
41
H. Sutter. The free lunch is over: A fundamental turn toward concurrency in software. Dr. Dobb's Journal, 2005.
 
42
F. Tabba, M. Moir, J. R. Goodman, A. W. Hay, and C. Wang. Appendix to NZTM. http://www.cs.auckland.ac.nz/∼fuad/nztm-appendix.pdf.
 
43
F. Tabba, C. Wang, J. R. Goodman, and M. Moir. NZTM: Nonblocking zero-indirection transactional memory. TRANSACT, 2007.
 
44

Collaborative Colleagues:
Fuad Tabba: colleagues
Mark Moir: colleagues
James R. Goodman: colleagues
Andrew W. Hay: colleagues
Cong Wang: colleagues