2D-Stack: A scalable lock-free stack design that continuously relaxes semantics for better performance
Report, 2018
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 different relaxation and concurrency settings. The results show that our algorithm signicantly 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
Lock-free
Stack
Relaxed Semantics
Concurrency
Author
Adones Rukundo
Chalmers, Computer Science and Engineering (Chalmers)
Aras Atalar
Chalmers, Computer Science and Engineering (Chalmers), Networks and Systems (Chalmers)
Philippas Tsigas
Chalmers, Computer Science and Engineering (Chalmers), Networks and Systems (Chalmers)
Subject Categories
Computer Engineering
Communication Systems
Computer Science
Areas of Advance
Information and Communication Technology
Driving Forces
Sustainable development
Innovation and entrepreneurship
Technical report - Department of Computer Science and Engineering, Chalmers University of Technology and Göteborg University: 2018:06
Publisher
Chalmers