skip to main content
research-article

Concurrent hash tables: fast and general?(!)

Published:27 February 2016Publication History
Skip Abstract Section

Abstract

Concurrent hash tables are one of the most important concurrent data structures with numerous applications. Since hash table accesses can dominate the execution time of the overall application, we need implementations that achieve good speedup. Unfortunately, currently available concurrent hashing libraries turn out to be far away from this requirement in particular when contention on some elements occurs.

Our starting point for better performing data structures is a fast and simple lock-free concurrent hash table based on linear probing that is limited to word-sized key-value types and does not support dynamic size adaptation. We explain how to lift these limitations in a provably scalable way and demonstrate that dynamic growing has a performance overhead comparable to the same generalization in sequential hash tables.

We perform extensive experiments comparing the performance of our implementations with six of the most widely used concurrent hash tables. Ours are considerably faster than the best algorithms with similar restrictions and an order of magnitude faster than the best more general tables. In some extreme cases, the difference even approaches four orders of magnitude.

References

  1. Tobias Maier, Peter Sanders and Roman Dementiev, Concurrent Hash Tables: Fast and General?(!), arXiv:1601.04017, 2016.Google ScholarGoogle Scholar

Index Terms

  1. Concurrent hash tables: fast and general?(!)

                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 SIGPLAN Notices
                  ACM SIGPLAN Notices  Volume 51, Issue 8
                  PPoPP '16
                  August 2016
                  405 pages
                  ISSN:0362-1340
                  EISSN:1558-1160
                  DOI:10.1145/3016078
                  Issue’s Table of Contents
                  • cover image ACM Conferences
                    PPoPP '16: Proceedings of the 21st ACM SIGPLAN Symposium on Principles and Practice of Parallel Programming
                    February 2016
                    420 pages
                    ISBN:9781450340922
                    DOI:10.1145/2851141

                  Copyright © 2016 ACM

                  Publisher

                  Association for Computing Machinery

                  New York, NY, United States

                  Publication History

                  • Published: 27 February 2016

                  Check for updates

                  Qualifiers

                  • research-article

                PDF Format

                View or Download as a PDF file.

                PDF

                eReader

                View online with eReader.

                eReader
                About Cookies On This Site

                We use cookies to ensure that we give you the best experience on our website.

                Learn more

                Got it!