Fixing Non-blocking Data Structures for Better Compatibility with Memory Reclamation Schemes

Research output: Chapter in Book/Report/Conference proceedingConference contribution

Abstract

We present a new technique, Safe Concurrent Optimistic Traversals (SCOT), to address a well-known problem related to optimistic traversals with classical and more recent safe memory reclamation (SMR) schemes, such as Hazard Pointers (HP), Hazard Eras (HE), Interval-Based Reclamation (IBR), and Hyaline. Unlike Epoch-Based Reclamation (EBR), these (robust) schemes protect against stalled threads but lack support for well-known data structures with optimistic traversals, e.g., Harris' list and the Natarajan-Mittal tree. Such schemes are either incompatible with them or need changes with performance trade-offs (e.g., the Harris-Michael list). SCOT keeps existing SMR schemes intact and retains performance benefits of original data structures. We implement and evaluate SCOT with Harris' list and the Natarajan-Mittal tree, but it is also applicable to other data structures. Furthermore, we provide a simple modification for wait-free traversals. We observe similar performance speedups (e.g., Harris vs. Harris-Michael lists) that were previously available only to EBR users. Our version of the tree also achieves very high throughput, comparable to that of EBR, which is often treated as a practical upper bound.

Original languageEnglish (US)
Title of host publicationProceedings of the 31st ACM SIGPLAN Annual Symposium on Principles and Practice of Parallel Programming, PPoPP 2026
EditorsTony Hosking, Madan Musuvathi, Kenjiro Taura
PublisherAssociation for Computing Machinery, Inc
Pages26-39
Number of pages14
ISBN (Electronic)9798400723100
DOIs
StatePublished - Jan 28 2026
Event31st Annual ACM SIGPLAN Symposium on Principles and Practice of Parallel Programming, PPoPP 2026 - Sydney, Australia
Duration: Jan 31 2026Feb 4 2026

Publication series

NameProceedings of the 31st ACM SIGPLAN Annual Symposium on Principles and Practice of Parallel Programming, PPoPP 2026

Conference

Conference31st Annual ACM SIGPLAN Symposium on Principles and Practice of Parallel Programming, PPoPP 2026
Country/TerritoryAustralia
CitySydney
Period1/31/262/4/26

All Science Journal Classification (ASJC) codes

  • Software

Fingerprint

Dive into the research topics of 'Fixing Non-blocking Data Structures for Better Compatibility with Memory Reclamation Schemes'. Together they form a unique fingerprint.

Cite this