Concurrent Fixed-Size Allocation and Free in Constant Time
Guy E. Blelloch, Yuanhao Wei

TL;DR
This paper introduces a concurrent memory allocation algorithm that supports fixed-size allocate and free operations in constant time, using minimal synchronization primitives, suitable for asynchronous multi-process systems.
Contribution
It presents the first implementation of fixed-size allocate and free operations that are both constant time and practical in concurrent environments.
Findings
Supports allocation and free in O(1) worst-case time
Uses only single-word read, write, and CAS operations
Achieves Θ(p^2) space overhead for p processes
Abstract
Our goal is to efficiently solve the dynamic memory allocation problem in a concurrent setting where processes run asynchronously. On processes, we can support allocation and free for fixed-sized blocks with worst-case time per operation, additive space overhead, and using only single-word read, write, and CAS. While many algorithms rely on having constant-time fixed-size allocate and free, we present the first implementation of these two operations that is constant time with reasonable space 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.
