[go: up one dir, main page]
More Web Proxy on the site http://driver.im/ skip to main content
10.1145/2555243.2555269acmconferencesArticle/Chapter ViewAbstractPublication PagesppoppConference Proceedingsconference-collections
research-article

Practical concurrent binary search trees via logical ordering

Published: 06 February 2014 Publication History

Abstract

We present practical, concurrent binary search tree (BST) algorithms that explicitly maintain logical ordering information in the data structure, permitting clean separation from its physical tree layout. We capture logical ordering using intervals, with the property that an item belongs to the tree if and only if the item is an endpoint of some interval. We are thus able to construct efficient, synchronization-free and intuitive lookup operations. We present (i) a concurrent non-balanced BST with a lock-free lookup, and (ii) a concurrent AVL tree with a lock-free lookup that requires no synchronization with any mutating operations, including balancing operations. Our algorithms apply on-time deletion; that is, every request for removal of a node, results in its immediate removal from the tree. This new feature did not exist in previous concurrent internal tree algorithms.
We implemented our concurrent BST algorithms and evaluated them against several state-of-the-art concurrent tree algorithms. Our experimental results show that our algorithms with lock-free contains and on-time deletion are practical and often comparable to the state-of-the-art.

References

[1]
ADELSON-VELSKII, G., AND LANDIS, E. M. An algorithm for the organization of information. In Proc. of the USSR Academy of Sciences, 146:263--266 (1962).
[2]
BAYER, R. Symmetric binary b-trees: Data structure and maintenance algorithms. Acta Informatica 1, 4 (1972), 290--306.
[3]
BAYER, R., AND SCHKOLNICK, M. Concurrency of operations on b-trees. Acta Informatica 9, 1 (1977), 1--21.
[4]
BENDER, M. A., FINEMAN, J. T., GILBERT, S., AND KUSZ-MAUL, B. C. Concurrent cache-oblivious b-trees. In SPAA (2005), pp. 228--237.
[5]
BESA, J., AND ETEROVIC, Y. A concurrent red-black tree. Journal of Parallel and Distributed Computing 73, 4 (2013), 434--449.
[6]
BOUGÉ, L., GABARRÓ, J., MESSEGUER, X., AND SCHA-BANEL, N. Height-relaxed avl rebalancing: A unified, fine-grained approach to concurrent dictionaries, 1998.
[7]
BRAGINSKY, A., AND PETRANK, E. A lock-free b+tree. In SPAA (2012), pp. 58--67.
[8]
BRONSON, N. G., CASPER, J., CHAFI, H., AND OLUKO-TUN, K. A practical concurrent binary search tree. In PPoPP (2010), pp. 257--268.
[9]
BROWN, T., ELLEN, F., AND RUPPERT, E. A general technique for non-blocking trees. In Proc. 19th ACM Symposium on Principles and Practice of Parallel Programming (2014).
[10]
CRAIN, T., GRAMOLI, V., AND RAYNAL, M. A contention-friendly binary search tree. In Euro-Par (2013), pp. 229--240.
[11]
ELLEN, F., FATOUROU, P., RUPPERT, E., AND VAN BREUGEL, F. Non-blocking binary search trees. In PODC (2010), pp. 131--140.
[12]
FRASER, K. Practical lock-freedom. Tech. Rep. UCAM-CL-TR-579, University of Cambridge, Computer Laboratory, Feb. 2004.
[13]
HOWLEY, S. V., AND JONES, J. A non-blocking internal binary search tree. In Proc. 24th ACM Symposium on Parallelism in Algorithms and Architectures (2012), pp. 161--171.
[14]
KUNG, H. T., AND ROBINSON, J. T. On optimistic methods for concurrency control. ACM Trans. Database Syst. 6, 2 (June 1981), 213--226.
[15]
NATARAJAN, A., AND MITTAL, N. Fast concurrent lock-free binary search trees. In Proc. 19th ACM Symposium on Principles and Practice of Parallel Programming (2014).
[16]
PFAFF, B. Performance analysis of BSTs in system software. In SIGMETRICS (2004), ACM, pp. 410--411.

Cited By

View all
  • (2024)Simple, Fast and Widely Applicable Concurrent Memory Reclamation via NeutralizationIEEE Transactions on Parallel and Distributed Systems10.1109/TPDS.2023.333567135:2(203-220)Online publication date: 1-Feb-2024
  • (2024)CAA: A Concurrent AA Tree via Logical ordering2024 23rd International Symposium on Parallel and Distributed Computing (ISPDC)10.1109/ISPDC62236.2024.10705402(1-8)Online publication date: 8-Jul-2024
  • (2023)Embedding Hindsight Reasoning in Separation LogicProceedings of the ACM on Programming Languages10.1145/35912967:PLDI(1848-1871)Online publication date: 6-Jun-2023
  • Show More Cited By

Recommendations

Comments

Please enable JavaScript to view thecomments powered by Disqus.

Information & Contributors

Information

Published In

cover image ACM Conferences
PPoPP '14: Proceedings of the 19th ACM SIGPLAN symposium on Principles and practice of parallel programming
February 2014
412 pages
ISBN:9781450326568
DOI:10.1145/2555243
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 the author(s) 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: 06 February 2014

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. concurrency
  2. search trees

Qualifiers

  • Research-article

Conference

PPoPP '14
Sponsor:

Acceptance Rates

PPoPP '14 Paper Acceptance Rate 28 of 184 submissions, 15%;
Overall Acceptance Rate 230 of 1,014 submissions, 23%

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)51
  • Downloads (Last 6 weeks)8
Reflects downloads up to 11 Dec 2024

Other Metrics

Citations

Cited By

View all
  • (2024)Simple, Fast and Widely Applicable Concurrent Memory Reclamation via NeutralizationIEEE Transactions on Parallel and Distributed Systems10.1109/TPDS.2023.333567135:2(203-220)Online publication date: 1-Feb-2024
  • (2024)CAA: A Concurrent AA Tree via Logical ordering2024 23rd International Symposium on Parallel and Distributed Computing (ISPDC)10.1109/ISPDC62236.2024.10705402(1-8)Online publication date: 8-Jul-2024
  • (2023)Embedding Hindsight Reasoning in Separation LogicProceedings of the ACM on Programming Languages10.1145/35912967:PLDI(1848-1871)Online publication date: 6-Jun-2023
  • (2023)Lincheck: A Practical Framework for Testing Concurrent Data Structures on JVMComputer Aided Verification10.1007/978-3-031-37706-8_8(156-169)Online publication date: 17-Jul-2023
  • (2022)Fast and Fair Randomized Wait-Free LocksProceedings of the 2022 ACM Symposium on Principles of Distributed Computing10.1145/3519270.3538448(187-197)Online publication date: 20-Jul-2022
  • (2022)Lock-free locks revisitedProceedings of the 27th ACM SIGPLAN Symposium on Principles and Practice of Parallel Programming10.1145/3503221.3508433(278-293)Online publication date: 2-Apr-2022
  • (2022)PathCASProceedings of the 27th ACM SIGPLAN Symposium on Principles and Practice of Parallel Programming10.1145/3503221.3508410(385-399)Online publication date: 2-Apr-2022
  • (2022)A Survey on Lock-free Binary Search Tree2022 13th International Conference on Information and Communication Technology Convergence (ICTC)10.1109/ICTC55196.2022.9952812(1136-1138)Online publication date: 19-Oct-2022
  • (2021)NBRProceedings of the 26th ACM SIGPLAN Symposium on Principles and Practice of Parallel Programming10.1145/3437801.3441625(175-190)Online publication date: 17-Feb-2021
  • (2021)SynCron: Efficient Synchronization Support for Near-Data-Processing Architectures2021 IEEE International Symposium on High-Performance Computer Architecture (HPCA)10.1109/HPCA51647.2021.00031(263-276)Online publication date: Feb-2021
  • Show More Cited By

View Options

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