skip to main content
research-article

Early experience with a commercial hardware transactional memory implementation

Authors Info & Claims
Published:07 March 2009Publication History
Skip Abstract Section

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.

References

  1. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  2. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  3. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  4. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  5. 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 ScholarGoogle Scholar
  6. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  7. D. Dice, O. Shalev, and N. Shavit. Transactional locking II. In Proc. International Symposium on Distributed Computing, 2006. Google ScholarGoogle ScholarDigital LibraryDigital Library
  8. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  9. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  10. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  11. 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 ScholarGoogle Scholar
  12. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  13. 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 ScholarGoogle Scholar
  14. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  15. V. Marathe, W. Scherer, and M. Scott. Adaptive software transactional memory. In 19th International Symposium on Distributed Computing, 2005. Google ScholarGoogle ScholarDigital LibraryDigital Library
  16. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  17. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  18. J. Neffenger. The volano report, May 2003. http://www.volano.com/report/index.html. {19} R. Rajwar andGoogle ScholarGoogle Scholar
  19. J. R. Goodman. Speculative lock elision: Enabling highly concurrent multithreaded execution. In Proc. 34th International Symposium on Microarchitecture, pages 294--305, Dec. 2001. Google ScholarGoogle ScholarDigital LibraryDigital Library
  20. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  21. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  22. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  23. 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 ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. Early experience with a commercial hardware transactional memory implementation

        Recommendations

        Comments

        Login options

        Check if you have access through your login credentials or your institution to get full access on this article.

        Sign in

        Full Access

        • Published in

          cover image ACM SIGARCH Computer Architecture News
          ACM SIGARCH Computer Architecture News  Volume 37, Issue 1
          ASPLOS 2009
          March 2009
          346 pages
          ISSN:0163-5964
          DOI:10.1145/2528521
          Issue’s Table of Contents
          • cover image ACM Conferences
            ASPLOS XIV: Proceedings of the 14th international conference on Architectural support for programming languages and operating systems
            March 2009
            358 pages
            ISBN:9781605584065
            DOI:10.1145/1508244

          Copyright © 2009 ACM

          Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

          Publisher

          Association for Computing Machinery

          New York, NY, United States

          Publication History

          • Published: 7 March 2009

          Check for updates

          Qualifiers

          • research-article

        PDF Format

        View or Download as a PDF file.

        PDF

        eReader

        View online with eReader.

        eReader