A practical concurrent binary search tree

Nathan G. Bronson, Jared Casper, Hassan Chafi, Kunle Olukotun
2010 Proceedings of the 15th ACM SIGPLAN symposium on Principles and practice of parallel programming - PPoPP '10  
We propose a concurrent relaxed balance AVL tree algorithm that is fast, scales well, and tolerates contention. It is based on optimistic techniques adapted from software transactional memory, but takes advantage of specific knowledge of the the algorithm to reduce overheads and avoid unnecessary retries. We extend our algorithm with a fast linearizable clone operation, which can be used for consistent iteration of the tree. Experimental evidence shows that our algorithm outperforms a highly
more » ... ed concurrent skip list for many access patterns, with an average of 39% higher singlethreaded throughput and 32% higher multi-threaded throughput over a range of contention levels and operation mixes.
doi:10.1145/1693453.1693488 dblp:conf/ppopp/BronsonCCO10 fatcat:zxfs4666bjeqbdcdmi2hlju3b4