2D-Stack: A scalable lock-free stack design that continuously relaxes semantics for better performance
Rapport, 2018

In this report, we propose an efficient lock-free concurrent stack design with tunable and tenable relaxed semantics to allow for better performance. The design is materialized by a shared memory distributed stack design that allow for a continuous monotonic trade of weaker semantics for better throughput performance. Concurrent stacks have an inherent scalability bottleneck due to their single access point for both push and pop operations.

Elimination and semantics relaxation have been proposed in the literature to address this problem. Semantic relaxation has the potential and flexibility to reach monotonically very high throughput. Previous solutions could not fully leverage this potential. We propose a new two-dimensional design that can achieve this by exploiting disjoint access parallelism in one dimension and locality in the other. This is achieved through distributing the stack in form of sub-stacks that are accessed independently in parallel. Load balancing is used to keep a balanced number of operations on individual sub-stacks.

We also provide tight relaxation bounds for the behaviour of our algorithm. We compare experimentally to previous work, with respect to throughput and relaxed behaviour observed, on di fferent relaxation and concurrency settings. The results show that our algorithm signi cantly outperform all other algorithms in terms of performance, while maintaining better quality in contrast to other designs with relaxed semantics.

Weak Consistence

Data Structures

Distributed Algorithms

Technical Report



Relaxed Semantics



Adones Rukundo

Chalmers, Data- och informationsteknik

Aras Atalar

Chalmers, Data- och informationsteknik, Nätverk och system

Philippas Tsigas

Chalmers, Data- och informationsteknik, Nätverk och system




Datavetenskap (datalogi)


Informations- och kommunikationsteknik


Hållbar utveckling

Innovation och entreprenörskap

Technical report - Department of Computer Science and Engineering, Chalmers University of Technology and Göteborg University: 2018:06



Mer information

Senast uppdaterat