A Wait-free Queue with Polylogarithmic Step Complexity
arXiv:2305.07229
Abstract
We present a novel linearizable wait-free queue implementation using single-word CAS instructions. Previous lock-free queue implementations from CAS all have amortized step complexity of per operation in worst-case executions, where is the number of processes that access the queue. Our new wait-free queue takes steps per enqueue and steps per dequeue, where is the size of the queue. A bounded-space version of the implementation has amortized step complexity per operation.
18 pages, 6 figures, to be published in Proceedings of the 2023 ACM Symposium on Principles of Distributed Computing