Back to Search Start Over

A concurrent red–black tree

Authors :
Yadran Eterovic
Juan José Besa
Source :
Journal of Parallel and Distributed Computing. 73:434-449
Publication Year :
2013
Publisher :
Elsevier BV, 2013.

Abstract

With the proliferation of multiprocessor computers, data structures capable of supporting several processes are a growing need. Concurrent data structures seek to provide similar performance to sequential data structures while being accessible concurrently by several processes and providing synchronization mechanisms transparently to those processes. Red-black trees are an important data structure used in many systems. Unfortunately, it is difficult to implement an efficient concurrent red-black tree for shared memory processes; so most research efforts have been directed towards other dictionary data structures, mainly skip-lists and AVL trees. In this paper we present a new type of concurrent red-black tree that uses optimistic concurrency techniques and new balancing operations to scale well and support contention. Our tree performs favorably compared to other similar dictionaries; in particular, in high contention scenarios it performs up to 14% better than the best-known concurrent dictionary solutions.

Details

ISSN :
07437315
Volume :
73
Database :
OpenAIRE
Journal :
Journal of Parallel and Distributed Computing
Accession number :
edsair.doi...........12925842cf8ded3b1ba62e5833bd2ab2