Nothing Special   »   [go: up one dir, main page]

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

Transactional Lock Elision Meets Combining

Published: 25 July 2017 Publication 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.
[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.
[3]
Vladimir Budovsky. 2010. Combining Techniques Application for Tree Search Structures. Master's thesis. Tel Aviv University.
[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.
[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.
[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.
[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.
[8]
Dana Drachsler-Cohen and Erez Petrank. 2014. LCD: Local Combining on Demand. In Proceedings of OPODIS. 355--371.
[9]
Panagiota Fatourou and Nikolaos D. Kallimanis. 2012. Revisiting the Combining Synchronization Technique. In Proceedings of ACM PPOPP. 257--266.
[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.
[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.
[12]
Danny Hendler, Itai Incze, Nir Shavit, and Moran Tzafrir. 2010b. Scalable Flat-Combining Based Synchronous Queues. In Proceedings of DISC. 79--93.
[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.
[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.
[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.

Cited By

View all
  • (2022)BQ: A Lock-Free Queue with BatchingACM Transactions on Parallel Computing10.1145/35127579:1(1-49)Online publication date: 23-Mar-2022
  • (2018)BQProceedings of the 30th on Symposium on Parallelism in Algorithms and Architectures10.1145/3210377.3210388(99-109)Online publication date: 11-Jul-2018

Index Terms

  1. Transactional Lock Elision Meets Combining

    Recommendations

    Comments

    Please enable JavaScript to view thecomments powered by Disqus.

    Information & Contributors

    Information

    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
    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]

    Sponsors

    Publisher

    Association for Computing Machinery

    New York, NY, United States

    Publication History

    Published: 25 July 2017

    Permissions

    Request permissions for this article.

    Check for updates

    Author Tags

    1. concurrent data structures
    2. elimination
    3. flat combining
    4. hardware transactional memory
    5. lock elision

    Qualifiers

    • Research-article

    Conference

    PODC '17
    Sponsor:

    Acceptance Rates

    PODC '17 Paper Acceptance Rate 38 of 154 submissions, 25%;
    Overall Acceptance Rate 740 of 2,477 submissions, 30%

    Contributors

    Other Metrics

    Bibliometrics & Citations

    Bibliometrics

    Article Metrics

    • Downloads (Last 12 months)55
    • Downloads (Last 6 weeks)4
    Reflects downloads up to 13 Nov 2024

    Other Metrics

    Citations

    Cited By

    View all
    • (2022)BQ: A Lock-Free Queue with BatchingACM Transactions on Parallel Computing10.1145/35127579:1(1-49)Online publication date: 23-Mar-2022
    • (2018)BQProceedings of the 30th on Symposium on Parallelism in Algorithms and Architectures10.1145/3210377.3210388(99-109)Online publication date: 11-Jul-2018

    View Options

    Get Access

    Login options

    View options

    PDF

    View or Download as a PDF file.

    PDF

    eReader

    View online with eReader.

    eReader

    Media

    Figures

    Other

    Tables

    Share

    Share

    Share this Publication link

    Share on social media