skip to main content
10.1145/3087801.3087838acmconferencesArticle/Chapter ViewAbstractPublication PagespodcConference Proceedingsconference-collections
research-article

Transactional Lock Elision Meets Combining

Published:25 July 2017Publication History

ABSTRACT

Flat combining (FC) and transactional lock elision (TLE) are two techniques that facilitate efficient multi-thread access to a sequentially implemented data structure protected by a lock. FC allows threads to delegate their operations to another (combiner) thread, and benefit from executing multiple operations by that thread under the lock through combining and elimination optimizations tailored to the specific data structure. TLE employs hardware transactional memory (HTM) that allows multiple threads to apply their operations concurrently as long as they do not conflict. This paper explores how these two radically different techniques can complement one another, and introduces the HTM-assisted Combining Framework (HCF). HCF leverages HTM to allow multiple combiners to run concurrently with each other, as well as with other, non-combiner threads. This makes HCF a good fit for data structures and workloads in which some operations may conflict with each other while others may run concurrently without conflicts. HCF achieves all that with changes to the sequential code similar to those required by TLE and FC, and in particular, without requiring the programmer to reason about concurrency.

References

  1. Yehuda Afek, Amir Levy, and Adam Morrison. 2014. Software-improved hardware lock elision. In Proceedings of ACM PODC. 212--221. Google ScholarGoogle ScholarDigital LibraryDigital Library
  2. Trevor Brown, Alex Kogan, Yossi Lev, and Victor Luchangco. 2016. Investigating the Performance of Hardware Transactions on a Multi-Socket Machine. In Proceedings of ACM SPAA. 121--132. Google ScholarGoogle ScholarDigital LibraryDigital Library
  3. Vladimir Budovsky. 2010. Combining Techniques Application for Tree Search Structures. Master's thesis. Tel Aviv University.Google ScholarGoogle Scholar
  4. Dave Dice, Alex Kogan, Yossi Lev, Timothy Merrifield, and Mark Moir. 2014. Adaptive integration of hardware and software lock elision techniques. In Proceedings of the ACM Symposium on Parallelism in Algorithms and Architectures (SPAA). 188--197. Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. Dave Dice, Yossi Lev, Mark Moir, and Daniel Nussbaum. 2009. Early experience with a commercial hardware transactional memory implementation. In Proceedings of ASPLOS. 157--168. Google ScholarGoogle ScholarDigital LibraryDigital Library
  6. Nuno Diegues, Paolo Romano, and Stoyan Garbatov. 2015. Seer: Probabilistic Scheduling for Hardware Transactional Memory. In Proceedings of the ACM Symposium on Parallelism in Algorithms and Architectures (SPAA). 224--233. Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. Nuno Diegues, Paolo Romano, and Luıs Rodrigues. 2014. Virtues and Limitations of Commodity Hardware Transactional Memory. In Proceedings of the International Conference on Parallel Architectures and Compilation (PACT). 3--14. Google ScholarGoogle ScholarDigital LibraryDigital Library
  8. Dana Drachsler-Cohen and Erez Petrank. 2014. LCD: Local Combining on Demand. In Proceedings of OPODIS. 355--371. Google ScholarGoogle ScholarCross RefCross Ref
  9. Panagiota Fatourou and Nikolaos D. Kallimanis. 2012. Revisiting the Combining Synchronization Technique. In Proceedings of ACM PPOPP. 257--266. Google ScholarGoogle ScholarDigital LibraryDigital Library
  10. Steve Heller, Maurice Herlihy, Victor Luchangco, Mark Moir, William N. Scherer, and Nir Shavit. 2005. A Lazy Concurrent List-based Set Algorithm. In Proceedings of the Int. Conference on Principles of Distributed Systems (OPODIS). 3--16.Google ScholarGoogle Scholar
  11. Danny Hendler, Itai Incze, Nir Shavit, and Moran Tzafrir. 2010a. Flat Combining and the Synchronization-parallelism Tradeoff. In Proceedings of the ACM Symposium on Parallelism in Algorithms and Architectures (SPAA). 355--364. Google ScholarGoogle ScholarDigital LibraryDigital Library
  12. Danny Hendler, Itai Incze, Nir Shavit, and Moran Tzafrir. 2010b. Scalable Flat-Combining Based Synchronous Queues. In Proceedings of DISC. 79--93. Google ScholarGoogle ScholarCross RefCross Ref
  13. Takuya Nakaike, Rei Odaira, Matthew Gaudet, Maged Michael, and Hisanobu Tomari. 2015. Quantitative Comparison of Hardware Transactional Memory for Blue Gene/Q, zEnterprise EC12, Intel Core, and POWER8. In Proceedings of the International Symposium on Computer Architecture (ISCA). 144--157. Google ScholarGoogle ScholarDigital LibraryDigital Library
  14. Ravi Rajwar and James R. Goodman. 2001. Speculative Lock Elision: Enabling Highly Concurrent Multithreaded Execution. In Proceedings of the ACM/IEEE International Symposium on Microarchitecture (Micro). 294--305. Google ScholarGoogle ScholarCross RefCross Ref
  15. Richard M. Yoo, Christopher J. Hughes, Konrad Lai, and Ravi Rajwar. 2013. Performance evaluation of Intel® transactional synchronization extensions for high-performance computing. In International Conference for High Performance Computing, Networking, Storage and Analysis (SC). Article 19.Google ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. Transactional Lock Elision Meets Combining

    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
    • Published in

      cover image ACM Conferences
      PODC '17: Proceedings of the ACM Symposium on Principles of Distributed Computing
      July 2017
      480 pages
      ISBN:9781450349925
      DOI:10.1145/3087801

      Copyright © 2017 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: 25 July 2017

      Permissions

      Request permissions about this article.

      Request Permissions

      Check for updates

      Qualifiers

      • research-article

      Acceptance Rates

      PODC '17 Paper Acceptance Rate38of154submissions,25%Overall Acceptance Rate740of2,477submissions,30%

      Upcoming Conference

      PODC '24

    PDF Format

    View or Download as a PDF file.

    PDF

    eReader

    View online with eReader.

    eReader