We extend contention adapting trees CA trees, a family of concurrent data structures for ordered sets, to support linearizable range queries, range updates, and operations that atomically operate on multiple keys such as bulk insertions and deletions. CA trees differ from related concurrent data structures by adapting themselves according to the contention level and the access patterns to scale well in a multitude of scenarios. Variants of CA trees with different performance characteristics can be derived by changing their sequential component. We experimentally compare CA trees to state-of-the-art concurrent data structures and show that CA trees beat the best data structures we compare against with upi¾?to 57i¾?% in scenarios that contain basic set operations and range queries, and outperform them by more than 1200i¾?% in scenarios that also contain range updates.
['Konstantinos F. Sagonas', 'Kjell Winblad']
Efficient Support for Range Queries and Range Updates Using Contention Adapting Search Trees