Deconstructing Queue-Based Mutual Exclusion
Wojciech Golab

TL;DR
This paper introduces a modular approach to designing queue-based mutual exclusion algorithms for shared memory multiprocessors, achieving optimal remote memory reference complexity and providing rigorous correctness and complexity analyses.
Contribution
It presents a generic mutual exclusion framework using a new MutexQueue data structure and offers two O(1) RMR implementations based on common synchronization primitives.
Findings
Achieves O(1) RMR complexity for mutual exclusion algorithms.
Provides rigorous correctness proofs for the proposed algorithms.
Demonstrates implementations based on existing synchronization primitives.
Abstract
We formulate a modular approach to the design and analysis of a particular class of mutual exclusion algorithms for shared memory multiprocessor systems. Specifically, we consider algorithms that organize waiting processes into a queue. Such algorithms can achieve O(1) remote memory reference (RMR) complexity, which minimizes (asymptotically) the amount of traffic through the processor-memory interconnect. We first describe a generic mutual exclusion algorithm that relies on a linearizable implementation of a particular queue-like data structure that we call MutexQueue. Next, we show two implementations of MutexQueue using O(1) RMRs per operation based on synchronization primitives commonly available in multiprocessors. These implementations follow closely the queuing code embedded in previously published mutual exclusion algorithms. We provide rigorous correctness proofs and RMR…
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.
Taxonomy
TopicsDistributed systems and fault tolerance · Parallel Computing and Optimization Techniques · Interconnection Networks and Systems
