Abstract
We report on our experience with the hardware transactional memory (HTM) feature of two pre-production revisions of a new commercial multicore processor. Our experience includes a number of promising results using HTM to improve performance in a variety of contexts, and also identifies some ways in which the feature could be improved to make it even better. We give detailed accounts of our experiences, sharing techniques we used to achieve the results we have, as well as describing challenges we faced in doing so.
- C. S. Ananian, K. Asanovic, B. C. Kuszmaul, C. E. Leiserson, and S. Lie. Unbounded transactional memory. In Proc. 11th International Symposium on High-Performance Computer Architecture, pages 316--327, Feb. 2005. Google ScholarDigital Library
- L. Baugh, N. Neelakantam, and C. Zilles. Using hardware memory protection to build a high-performance, stronglyatomic hybrid transactional memory. In ISCA '08: Proceedings of the 35th International Symposium on Computer Architecture, pages 115--126, Washington, DC, USA, 2008. IEEE Computer Society. Google ScholarDigital Library
- S. Chaudhry, R. Cypher, M. Ekman, M. Karlsson, A. Landin, S. Yip, H. Zeffer, and M. Tremblay. Rock: A high-performance SPARC CMT processor. IEEE Micro, 2009. To appear. Google ScholarDigital Library
- P. Damron, A. Fedorova, Y. Lev, V. Luchangco, M. Moir, and D. Nussbaum. Hybrid transactional memory. In Proc. 12th Symposium on Architectural Support for Programming Languages and Operating Systems, Oct. 2006. Google ScholarDigital Library
- D. Dice, M. Herlihy, D. Lea, Y. Lev, V. Luchangco, W. Mesard, M. Moir, K. Moore, and D. Nussbaum. Applications of the adaptive transactional memory test platform. Transact 2008 workshop. http://research.sun.com/scalable/pubs/TRANSACT2008-ATMTP-Apps.pdf.Google Scholar
- 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. Google ScholarDigital Library
- D. Dice, O. Shalev, and N. Shavit. Transactional locking II. In Proc. International Symposium on Distributed Computing, 2006. Google ScholarDigital Library
- M. Herlihy, V. Luchangco, M. Moir, and W. N. Scherer III. Software transactional memory for supporting dynamic-sized data structures. In Proc. 22th Annual ACM Symposium on Principles of Distributed Computing, pages 92--101, 2003. Google ScholarDigital Library
- M. Herlihy and J. E. B. Moss. Transactional memory: Architectural support for lock-free data structures. In Proc. 20th Annual International Symposium on Computer Architecture, pages 289--300, May 1993. Google ScholarDigital Library
- S. Kang and D. A. Bader. An efficient transactional memory algorithm for computing minimum spanning forest of sparse graphs. In PPoPP '09: Proceedings of the 14th ACM SIGPLAN Symposium on Principles and practice of parallel programming, New York, NY, USA, 2009. ACM. To appear. Google ScholarDigital Library
- Y. Lev, V. Luchangco, V. Marathe, M. Moir, D. Nussbaum, and M. Olszewski. Anatomy of a scalable software transactional memory, November 2008. Under submission.Google Scholar
- Y. Lev and J.-W. Maessen. Split hardware transactions: true nesting of transactions using best-effort hardware transactional memory. In PPoPP '08: Proceedings of the 13th ACM SIGPLAN Symposium on Principles and practice of parallel programming, pages 197--206, New York, NY, USA, 2008. ACM. Google ScholarDigital Library
- Y. Lev, M. Moir, and D. Nussbaum. PhTM: Phased transactional memory. In Workshop on Transactional Computing (Transact), 2007. http://research.sun.com/scalable/pubs/TRANSACT2007-PhTM.pdf.Google Scholar
- C. Manovit, S. Hangal, H. Chafi, A. McDonald, C. Kozyrakis, and K. Olukotun. Testing implementations of transactional memory. In PACT '06: Proceedings of the 15th international conference on Parallel architectures and compilation techniques, pages 134--143, New York, NY, USA, Google ScholarDigital Library
- V. Marathe, W. Scherer, and M. Scott. Adaptive software transactional memory. In 19th International Symposium on Distributed Computing, 2005. Google ScholarDigital Library
- M. Moir, K. Moore, and D. Nussbaum. The Adaptive Transactional Memory Test Platform: A tool for experimenting with transactional code for Rock. In Workshop on Transactional Computiung (Transact), 2008. http://research.sun.com/scalable/pubs/TRANSACT2008--ATMTP.pdf.Google ScholarDigital Library
- N. Neelakantam, R. Rajwar, S. Srinivas, U. Srinivasan, and C. Zilles. Hardware atomicity for reliable software speculation. In ISCA '07: Proceedings of the 34th annual international symposium on Computer architecture, pages 174--185, New York, NY, USA, 2007. ACM. Google ScholarDigital Library
- J. Neffenger. The volano report, May 2003. http://www.volano.com/report/index.html. {19} R. Rajwar andGoogle Scholar
- J. R. Goodman. Speculative lock elision: Enabling highly concurrent multithreaded execution. In Proc. 34th International Symposium on Microarchitecture, pages 294--305, Dec. 2001. Google ScholarDigital Library
- R. Rajwar and J. R. Goodman. Transactional lock-free execution of lock-based programs. In Proc. Tenth Symposium on Architectural Support for Programming Languages and Operating Systems, pages 5--17, Oct. 2002. Google ScholarDigital Library
- R. Rajwar, M. Herlihy, and K. Lai. Virtualizing transactional memory. In Proc. 32nd Annual International Symposium on Computer Architecture, pages 494--505, Washington, DC, USA, 2005. Google ScholarDigital Library
- B. Saha, A.-R. Adl-Tabatabai, and Q. Jacobson. Architectural support for software transactional memory. In MICRO 39: Proceedings of the 39th Annual IEEE/ACM International Symposium on Microarchitecture, pages 185--196, Washington, DC, USA, 2006. IEEE Computer Society. Google ScholarDigital Library
- 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 HPCA '07: Proceedings of the 2007 IEEE 13th International Symposium on High Performance Computer Architecture, pages 261--272, Washington, DC, USA, 2007. IEEE Computer Society Google ScholarDigital Library
Index Terms
- Early experience with a commercial hardware transactional memory implementation
Recommendations
Early experience with a commercial hardware transactional memory implementation
ASPLOS XIV: Proceedings of the 14th international conference on Architectural support for programming languages and operating systemsWe report on our experience with the hardware transactional memory (HTM) feature of two pre-production revisions of a new commercial multicore processor. Our experience includes a number of promising results using HTM to improve performance in a variety ...
Early experience with a commercial hardware transactional memory implementation
ASPLOS 2009We report on our experience with the hardware transactional memory (HTM) feature of two pre-production revisions of a new commercial multicore processor. Our experience includes a number of promising results using HTM to improve performance in a variety ...
Transactional memory: from semantics to silicon
IWMSE '08: Proceedings of the 1st international workshop on Multicore software engineeringMulti-core architectures bring parallel programming into the mainstream. Parallel programming poses many new challenges to the developer, one of which is synchronizing concurrent access to shared memory by multiple threads. Programmers have ...
Comments