PathCAS: an efficient middle ground for concurrent search data structures
Trevor Brown, William Sigouin, Dan Alistarh
Abstract
To maximize the performance of concurrent data structures, researchers have often turned to highly complex fine-grained techniques, resulting in efficient and elegant algorithms, which can however be often difficult to understand and prove correct. While simpler techniques exist, such as transactional memory, they can have limited performance or portability relative to their fine-grained counterparts. Approaches at both ends of this complexity-performance spectrum have been extensively explored, but relatively less is known about the middle ground: approaches that are willing to sacrifice some performance for simplicity, while remaining competitive with state-of-the-art handcrafted designs. In this paper, we explore this middle ground, and present PathCAS, a primitive that combines ideas from multi-word CAS (KCAS) and transactional memory approaches, while carefully avoiding overhead. We show how PathCAS can be used to implement efficient search data structures relatively simply, using an internal binary search tree as an example, then extending this to an AVL tree. Our best implementations outperform many handcrafted search trees: in search-heavy workloads, it rivals the BCCO tree [5], the fastest known concurrent binary tree in terms of search performance [3]. Our results suggest that PathCAS can yield concurrent data structures that are relatively easy to build and prove correct, while offering surprisingly high performance.
Ask about this paper
Your agent reads all of it.
Lune indexed this paper to the last equation, along with the top-tier papers that cite it. Ask a question and the answer quotes them.
Cited by top-tier papers1
Ask how each one uses itBuilds on2
Related papers
- Constant-time snapshots with applications to concurrent data structuresYuanhao Wei, Naama Ben-David, Guy E. Blelloch, Panagiota Fatourou et al.PPoPP 2021 · 37 citations
- Concurrent Path-Copying Update to Tree StructuresGuanhao Hou, Dechuang Chen, Qintian Guo, Fangyuan Zhang et al.SIGMOD 2026
- Scaling concurrent queues by using HTM to profit from failed atomic operationsOr Ostrovsky, Adam MorrisonPPoPP 2020 · 6 citations
- Boosting Performance and QoS for Concurrent GPU B+trees by Combining-Based SynchronizationWeihua Zhang, Chuanlei Zhao, Lu Peng, Yuzhe Lin et al.PPoPP 2023 · 7 citations
- Dynamic Interleaving of Content and Structure for Robust Indexing of Semi-Structured Hierarchical DataKevin Wellenzohn, Michael H. Böhlen, Sven HelmerVLDB 2020 · 3 citations
