skip to main content
10.1145/2684464.2684472acmotherconferencesArticle/Chapter ViewAbstractPublication PagesicdcnConference Proceedingsconference-collections
research-article

A Fast Lock-Free Internal Binary Search Tree

Authors Info & Claims
Published:04 January 2015Publication History

ABSTRACT

We present a new lock-free algorithm for concurrent manipulation of a binary search tree in an asynchronous shared memory system that supports search, insert and delete operations. It combines ideas from two recently proposed lock-free algorithms: one of them provides good performance for a read-dominated workload and the other one for a write-dominated workload. Specifically, it uses internal representation of a search tree (as in the first one) and is based on marking edges instead of nodes (as in the second one). Our experiments indicate that our new lock-free algorithm outperforms other lock-free algorithms in most cases providing up to 35% improvement in some cases over the next best algorithm.

References

  1. M. Arbel and H. Attiya. Concurrent Updates with RCU: Search Tree as an Example. In Proceedings of the 33rd ACM Symposium on Principles of Distributed Computing (PODC), pages 196--205, July 2014. Google ScholarGoogle ScholarDigital LibraryDigital Library
  2. M. A. Bender, J. T. Fineman, S. Gilbert, and B. C. Kuszmaul. Concurrent Cache-Oblivious B-Trees. In Proceedings of the 17th ACM Symposium on Parallelism in Algorithms and Architectures (SPAA), pages 228--237, July 2005. Google ScholarGoogle ScholarDigital LibraryDigital Library
  3. A. Braginsky and E. Petrank. A Lock-Free B+tree. In Proceedings of the 24th ACM Symposium on Parallelism in Algorithms and Architectures (SPAA), pages 58--67, 2012. Google ScholarGoogle ScholarDigital LibraryDigital Library
  4. D. Drachsler, M. Vechev, and E. Yahav. Practical Concurrent Binary Search Trees via Logical Ordering. In Proceedings of the 19th ACM Symposium on Principles and Practice of Parallel Programming (PPoPP), pages 343--356, Feb. 2014. Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. F. Ellen, P. Fataourou, E. Ruppert, and F. van Breugel. Non-Blocking Binary Search Trees. In Proceedings of the 29th ACM Symposium on Principles of Distributed Computing (PODC), pages 131--140, July 2010. Google ScholarGoogle ScholarDigital LibraryDigital Library
  6. F. Ellen, P. Fatourou, J. Helga, and E. Ruppert. The Amortized Complexity of Non-Blocking Binary Search Trees. In Proceedings of the 33rd ACM Symposium on Principles of Distributed Computing (PODC), pages 332--340, 2014. Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. M. Fomitchev and E. Ruppert. Lock-Free Linked Lists and Skiplists. In Proceedings of the 23rd ACM Symposium on Principles of Distributed Computing (PODC), pages 50--59, July 2004. Google ScholarGoogle ScholarDigital LibraryDigital Library
  8. M. Herlihy and N. Shavit. The Art of Multiprocessor Programming, Revised Reprint. Morgan Kaufmann, 2012. Google ScholarGoogle ScholarDigital LibraryDigital Library
  9. S. V. Howley and J. Jones. A Non-Blocking Internal Binary Search Tree. In Proceedings of the 24th ACM Symposium on Parallelism in Algorithms and Architectures (SPAA), pages 161--171, June 2012. Google ScholarGoogle ScholarDigital LibraryDigital Library
  10. M. M. Michael. High Performance Dynamic Lock-Free Hash Tables and List-based Sets. In Proceedings of the 14th ACM Symposium on Parallelism in Algorithms and Architectures (SPAA), pages 73--82, 2002. Google ScholarGoogle ScholarDigital LibraryDigital Library
  11. A. Natarajan and N. Mittal. Brief Announcement: A Concurrent Lock-Free Red-Black Tree. In Proceedings of the 27th Symposium on Distributed Computing (DISC), Jerusalem, Israel, Oct. 2013. Google ScholarGoogle ScholarDigital LibraryDigital Library
  12. A. Natarajan and N. Mittal. Fast Concurrent Lock-Free Binary Search Trees. In Proceedings of the 19th ACM Symposium on Principles and Practice of Parallel Programming (PPoPP), pages 317--328, Feb. 2014. Google ScholarGoogle ScholarDigital LibraryDigital Library
  13. A. Natarajan, L. H. Savoie, and N. Mittal. Concurrent Wait-Free Red-Black Trees. In Proceedings of the 15th International Symposium on Stabilization, Safety, and Security of Distributed Systems (SSS), pages 45--60, Osaka, Japan, Nov. 2013. Google ScholarGoogle ScholarDigital LibraryDigital Library
  14. A. Ramachandran and N. Mittal. A Fast Lock-Free Internal Binary Search Tree. Technical Report UTDCS-11-14, Department of Computer Science, The University of Texas at Dallas, Aug. 2014.Google ScholarGoogle Scholar
  15. J. Reindeers. Intel Threading Building Blocks: Outfitting C++ for Multi-Core Processor Parallelism. O'Reilly Media, Inc., 2007. Google ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. A Fast Lock-Free Internal Binary Search Tree

                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 Other conferences
                  ICDCN '15: Proceedings of the 16th International Conference on Distributed Computing and Networking
                  January 2015
                  360 pages
                  ISBN:9781450329286
                  DOI:10.1145/2684464

                  Copyright © 2015 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: 4 January 2015

                  Permissions

                  Request permissions about this article.

                  Request Permissions

                  Check for updates

                  Qualifiers

                  • research-article
                  • Research
                  • Refereed limited

                PDF Format

                View or Download as a PDF file.

                PDF

                eReader

                View online with eReader.

                eReader