Occualizer: Optimistic Concurrent Search Trees From Sequential Code
Tomer Shanny, Adam Morrison
Abstract
This paper presents Occualizer, a mechanical source code transformation for adding scalable optimistic synchronization to a sequential search tree implementation. Occualizer injects synchronization only to the update steps of tree operations, leaving traversal steps to execute unsynchronized, thereby maximizing parallelism.
We use Occualizer to create concurrent versions of a sequential B+tree, trie, and red-black tree. Evaluation on a 28core machine shows that Occualizer's trees significantly outperform prior mechanically-crafted trees on non-read-only workloads and are comparable (within 4%) on read-only workloads. Overall, Occualizer shrinks the performance gap between mechanically-and hand-crafted trees by up to 13×. When using Occualizer's B+tree as the index in the STO main-memory database, the system's throughput degrades by less than 30% compared to the default Masstree index, and it scales better.
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.
Your agent calls
Luneget_paper_fulltext
Free to start. No credit card required.
Terminal
Install the CLIlune papers fulltext 7098bfc4-0899-44c1-ae7a-750796b7c3f5Cited by top-tier papers4
- Transparent Multicore Scaling of Single-Threaded Network FunctionsLei Yan, Yueyang Pan, Diyu Zhou, George Candea et al.EuroSys 2024 · 5 citations
- On Scalable Integrity Checking for Secure Cloud DisksQuinn Burke, Ryan Sheatsley, Rachel King, Owen Hines et al.FAST 2025 · 5 citations
- FB+-tree: A Memory-Optimized B+-tree with Latch-Free UpdateYuan Chen, Ao Li, Wenhai Li, Lingfeng DengVLDB 2025 · 2 citations
- SIDLE: Tree-structure Aware Indexes for CXL-based Heterogeneous MemoryHaoru Zhao, Mingkai Dong, Fangnuo Wu, Haibo ChenVLDB 2026 · 1 citation
Builds on3
- Opportunities for Optimism in Contended Main-Memory Multicore TransactionsYihe Huang, William Qian, Eddie Kohler, Barbara Liskov et al.VLDB 2020 · 60 citations
- Verifying concurrent search structure templatesSiddharth Krishna, Nisarg Patel, Dennis E. Shasha, Thomas WiesPLDI 2020 · 19 citations
- Proving highly-concurrent traversals correctYotam M. Y. Feldman, Artem Khyzha, Constantin Enea, Adam Morrison et al.OOPSLA 2020 · 12 citations
Related papers
- Operation-aware Hybrid Locking for Modern In-Memory IndexesVishal Gupta, Martin Sanchez Lopez, Victor Laforet, Jean-Pierre Lozi et al.VLDB 2026
- The Functional Essence of Imperative Binary Search TreesAnton Lorenzen, Daan Leijen, Wouter Swierstra, Sam LindleyPLDI 2024 · 6 citations
- OptiQL: Robust Optimistic Locking for Memory-Optimized IndexesGe Shi, Ziyi Yan, Tianzheng WangSIGMOD 2024 · 3 citations
- T4: Compiling Sequential Code for Effective Speculative Parallelization in HardwareVictor A. Ying, Mark C. Jeffrey, Daniel SánchezISCA 2020 · 25 citations
- Non-blocking interpolation search trees with doubly-logarithmic running timeTrevor Brown, Aleksandar Prokopec, Dan AlistarhPPoPP 2020 · 29 citations
