ACM Home Page
Please provide us with feedback. Feedback
Making the fast case common and the uncommon case simple in unbounded transactional memory
Full text PdfPdf (357 KB)
Source
ACM SIGARCH Computer Architecture News archive
Volume 35 ,  Issue 2  (May 2007) table of contents
SESSION: Transactions and synchronization table of contents
Pages: 24 - 34  
Year of Publication: 2007
ISSN:0163-5964
Also published in ...
Authors
Colin Blundell  University of Pennsylvania, Philadelphia, PA
Joe Devietti  University of Pennsylvania, Philadelphia, PA
E. Christopher Lewis  VMware: Inc., Palo Alto, PA
Milo M. K. Martin  University of Pennsylvania, Philadelphia, PA
Publisher
ACM  New York, NY, USA
Bibliometrics
Downloads (6 Weeks): 44,   Downloads (12 Months): 149,   Citation Count: 18
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/1273440.1250667
What is a DOI?

ABSTRACT

Hardware transactional memory has great potential to simplify the creation ofcorrect and efficient multithreaded programs, allowing programmers to exploitmore effectively the soon-to-be-ubiquitous multi-core designs. Several recentproposals have extended the original bounded transactional memory to unboundedtransactional memory, a crucial step toward transactions becoming ageneral-purpose primitive. Unfortunately, supporting the concurrent executionof an unbounded number of unbounded transactions is challenging, and as aresult, many proposed implementations are complex.

This paper explores a different approach. First, we introduce thepermissions-only cache to extend the bound at which transactions overflow toallow the fast, bounded case to be used as frequently as possible. Second, wepropose OneTM to simplify the implementation of unbounded transactional memoryby bounding the concurrency of transactions that overflow the cache. Thesemechanisms work synergistically to provide a simple and fast unboundedtransactional memory system.

The permissions-only cache efficiently maintains the coherencepermissions-but not data-for blocks read or written transactionally thathave been evicted from the processor's caches. By holding coherencepermissions for these blocks, the regular cache coherence protocol can be usedto detect transactional conflicts using only a few bits of on-chip storage peroverflowed cache block.OneTM allows only one overflowed transaction at a time, relying on thepermissions-only cache to ensure that overflow is infrequent. We present twoimplementations. In OneTM-Serialized, an overflowed transaction simply stallsall other threads in the application.

In OneTM-Concurrent, non-overflowedtransactions and non-transactional code can execute concurrently with theoverflowed transaction, providing more concurrency while retaining OneTM's coresimplifying assumption.


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
C. Blundell, E. C. Lewis, and M. M. K. Martin. Unrestricted Transactional Memory: Supporting I/O and System Calls within Transactions. Technical Report CIS-06-09, Department of Computer and Information Science, University of Pennsylvania, Apr. 2006.
4
5
 
6
7
8
 
9
10
11
12
13
14
 
15
J. R. Larus and R. Rajwar. Transactional Memory. Morgan and Claypool, 2007.
 
16
J. S. Liptay. Structural Aspects of the System/360 Model 85, Part II: The Cache. IBM Systems Journal, 7(1):15--21, 1968.
 
17
18
19
20
 
21
K. E. Moore, J. Bobba, M. J. Moravan, M. D. Hill, and D. A. Wood. LogTM: Log-based Transactional Memory. In Proceedings of the 12th Symposium on High-Performance Computer Architecture, Feb. 2006.
 
22
23
24
 
25
 
26
A. Shriraman, V. J. Marathe, S. Dwarkadas, M. L. Scott, D. Eisenstat, C. Heriot, W. N. S. III, , and M. F. Spear. Hardware Acceleration of Software Transactional Memory. In Proceedings of the Workshop on Languages, Compilers, and Hardware Support for Transactional Computing, June 2006.
 
27
28
 
29
J. M. Tendler, S. Dodson, S. Fields, H. Le, and B. Sinharoy. POWER4 System Microarchitecture. IBM Journal of Research and Development, 46(1), 2002.
30
 
31
L. Yen, J. Bobba, M. R. Marty, K. E. Moore, H. Volos, M. D. Hill, M. M. Swift, and D. A. Wood. LogTM-SE: Decoupling Hardware Transactional Memory from Caches. In Proceedings of the 13th Symposium on High-Performance Computer Architecture, Feb. 2007.

CITED BY  18

Collaborative Colleagues:
Colin Blundell: colleagues
Joe Devietti: colleagues
E. Christopher Lewis: colleagues
Milo M. K. Martin: colleagues