|
Published Articles >> Table of Contents >> Abstract
November/December 2003 (Vol. 23, No. 6)
pp. 117-125
Transactional Execution: Toward Reliable, High-Performance Multithreading
Ravi Rajwar, Intel Microarchitecture Research Lab
James Goodman, University of Auckland
Full Article Text:
  
DOI Bookmark: http://doi.ieeecomputersociety.org/10.1109/MM.2003.1261395
Send link to a friend
| Abstract |
|
Although lock-based critical sections are the synchronization method of choice, they have significant performance limitations and lack certain properties, such as failure atomicity and stability. Addressing both these limitations requires considerable software overhead. Transactional Lock Removal can dynamically eliminate synchronization operations and achieve transparent transactional execution by treating lock-based critical sections as lock-free optimistic transactions.
|
References
|
[1] R. Rajwar and J.R. Goodman, "Transactional Lock-Free Execution of Lock-Based Programs," Proc. Symp. Architectural Support for Programming Languages and Operating Systems (ASPLOS 02), ACM Press, 2002, pp. 5-17.
[2] R. Rajwar and J.R. Goodman, "Speculative Lock Elision: Enabling Highly Concurrent Multithreaded Execution," Proc. 34th Int'l Symp. Microarchitecture, IEEE CS Press, 2001, pp. 294-305.
[3] G.M. Amdahl, G.A. Blaauw, and F.P. Brooks Jr., "Architecture of the IBM System/360," IBM J. Research and Development, Apr. 1964, pp. 87-101.
[4] L. Rudolph and Z. Segall, "Dynamic Decentralized Cache Schemes for MIMD Parallel Processors," Proc. Int'l Symp. Computer Architecture (ISCA 84), ACM Press, 1984, pp. 340-347.
[5] J.R. Goodman, M.K. Vernon, and P.J. Woest, "Efficient Synchronization Primitives for Large-Scale Cache-Coherent Shared-Memory Multiprocessors," Proc. Symp. Architectural Support for Programming Languages and Operating Systems (ASPLOS 89), ACM Press, 1989, pp. 64-75.
[6] T.E. Anderson, "The Performance Implications of Spin-Waiting Alternatives for Shared-Memory Multiprocessors," Proc. Int'l Conf. Parallel Processing, vol. II (software), IEEE CS Press, 1989, pp. 170-174.
[7] J.M. Mellor-Crummey and M.L. Scott, "Synchronization without Contention," Proc. Symp. Architectural Support for Programming Languages and Operating Systems (ASPLOS 91), ACM Press, 1991, pp. 269-278.
[8] K. Gharachorloo, A. Gupta, and J.L. Hennessy, "Two Techniques to Enhance the Performance of Memory Consistency Models," Proc. Int'l Conf. Parallel Processing, IEEE CS Press, 1991, pp. 355-364.
[9] J.F. Martínez and J. Torrellas, "Speculative Synchronization: Applying Thread-Level Speculation to Explicitly Parallel Applications," Proc. Symp. Architectural Support for Programming Languages and Operating Systems (ASPLOS 02), ACM Press, 2002, pp. 18-29.
[10] A. Kägi, D. Burger, and J.R. Goodman, "Efficient Synchronization: Let Them Eat QOLB," Proc. Int'l Symp. Computer Architecture (ISCA 97), IEEE CS Press, 1997, pp. 170-180.
[11] M. Herlihy, "Wait-Free Synchronization," ACM Trans. Programming Languages and Systems, vol. 13, no. 1, Jan. 1991, pp. 124-129.
[12] M. Herlihy and J.E.B. Moss,“Transactional memory: Architectural support for lock-free data structures,” Proc. Int’l Symp. Computer Architecture, pp. 289-300, 1993.
[13] J.M. Stone,H.S. Stone,P. Heidelberger,, and J. Turek,“Multiple reservations and the oklahoma update,” IEEE Parallel and Distributed Technology, Systems, and Applications, vol. 1, no. 4, pp. 58-71, 1993.
[14] R. Rajwar, "Speculation-Based Techniques for Transactional Lock-Free Execution of Lock-Based Programs," PhD dissertation, CS Dept., Univ. of Wisconsin-Madison, 2002.
[15] R. Rajwar and P.A. Bernstein, "Atomic Transactional Execution in Hardware: A New High-Performance Abstraction for Databases," Int'l Workshop High-Performance Transaction Systems, 2003 (position paper);http://research.sun.comhpts2003/.
Additional References
[1] J. Gray, "The Transaction Concept: Virtues and Limitations," Proc. Int'l Conf. Very Large Databases, Morgan Kaufmann, 1981, pp. 144-154.
[2] K.P. Eswaran et al., "The Notions of Consistency and Predicate Locks in a Database System," Comm. ACM, vol. 19, no. 11, Nov. 1976, pp. 624-633.
|
Additional Information
|
Citation:
Ravi Rajwar, James Goodman,
"Transactional Execution: Toward Reliable, High-Performance Multithreading,"
IEEE Micro,
vol. 23,
no. 6,
pp. 117-125,
Nov/Dec,
2003
|
|