Concurrent Fixed-Size Allocation and Free in Constant Time

08/10/2020
by   Guy E. Blelloch, et al.
0

Our goal is to efficiently solve the dynamic memory allocation problem in a concurrent setting where processes run asynchronously. On p processes, we can support allocation and free for fixed-sized blocks with O(1) worst-case time per operation, Θ(p^2) 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.

READ FULL TEXT

page 1

page 2

page 3

page 4

research
02/17/2020

Concurrent Reference Counting and Resource Management in Wait-free Constant Time

A common problem when implementing concurrent programs is efficiently pr...
research
04/04/2022

Parameterized algorithm for replicated objects with local reads

We consider the problem of implementing linearizable objects that suppor...
research
05/21/2018

Stamp-it: A more Thread-efficient, Concurrent Memory Reclamation Scheme in the C++ Memory Model

We present Stamp-it, a new, concurrent, lock-less memory reclamation sch...
research
04/10/2018

A Non-blocking Buddy System for Scalable Memory Allocation on Multi-core Machines

Common implementations of core memory allocation components, like the Li...
research
01/10/2020

An Efficient Universal Construction for Large Objects

This paper presents L-UC, a universal construction that efficiently impl...
research
08/09/2018

Non-Interfering Concurrent Exchange (NICE) Networks

In studying the statistical frequency of exchange in comparison-exchange...
research
01/31/2023

Durable Algorithms for Writable LL/SC and CAS with Dynamic Joining

We present durable implementations for two well known universal primitiv...

Please sign up or login with your details

Forgot password? Click here to reset