Advertisement

Brief Announcement: Concurrent Wait-Free Red-Black Trees

  • Aravind Natarajan
  • Lee Savoie
  • Neeraj Mittal
Part of the Lecture Notes in Computer Science book series (LNCS, volume 7611)

Abstract

Motivation: With the prevalence of multi-core multi-processor systems, concurrent data structures are becoming increasingly important. Concurrency is most often managed through locks. However, lock-based implementations of concurrent data structures are vulnerable to problems such as deadlock, priority inversion and convoying. Non-blocking algorithms avoid the pitfalls of locks by using hardware-supported read-modify-write instructions such as load-linked/storeconditional (LL/SC) and compare-and-swap (CAS). In this announcement, we focus on a non-blocking concurrent red-black tree. Red-black tree is a type of selfbalancing binary search tree that provides good worst-case time complexity for search and modify (insert, update and delete) operations. However, red-black trees have been remarkably resistant to parallelization using both lock-based and lock-free techniques. The tree structure causes the root and high level nodes to become the subject of high contention and thus become a bottleneck. This problem is only exacerbated by the introduction of balancing requirements. We present a suite of wait-free algorithms for concurrently accessing an external red-black tree, obtained through a progressive sequence of modifications to an existing general framework. In all our algorithms, search operations only execute read and write instructions on shared memory.

References

  1. 1.
    Tsay, J.J., Li, H.C.: Lock-Free Concurrent Tree Structures for Multiprocessor Systems. In: Proceedings of the International Conference on Parallel and Distributed Systems (ICPADS), pp. 544–549 (December 1994)Google Scholar
  2. 2.
    Chuong, P., Ellen, F., Ramachandran, V.: A universal construction for wait-free transaction friendly data structures. In: Proceedings of the 22nd ACM Symposium on Parallelism in Algorithms and Architectures (SPAA), pp. 335–344 (2010)Google Scholar
  3. 3.
    Michael, M.M.: Hazard Pointers: Safe Memory Reclamation for Lock-Free Objects. IEEE Transactions on Parallel and Distributed Systems (TPDS) 15(6), 491–504 (2004)CrossRefGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2012

Authors and Affiliations

  • Aravind Natarajan
    • 1
  • Lee Savoie
    • 1
  • Neeraj Mittal
    • 1
  1. 1.The University of Texas at DallasRichardsonUSA

Personalised recommendations