PathCAS: An Efficient Middle Ground for Concurrent Search Data Structures
Trevor Brown, William Sigouin, Dan Alistarh

TL;DR
PathCAS introduces a middle-ground primitive for concurrent search data structures, balancing simplicity and performance, and enabling the creation of efficient, easier-to-understand concurrent trees that outperform many handcrafted designs.
Contribution
We present PathCAS, a novel primitive combining ideas from multi-word CAS and transactional memory, simplifying concurrent search structure implementation while maintaining high performance.
Findings
PathCAS-based search trees outperform many handcrafted concurrent trees.
The approach rivals the fastest known concurrent binary trees in search-heavy workloads.
PathCAS enables easier construction and verification of concurrent data structures.
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.…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
