A Dynamic Elimination-Combining Stack Algorithm
Gal Bar-Nissan, Danny Hendler, Adi Suissa

TL;DR
DECS is a new concurrent stack algorithm that combines elimination and dynamic combining techniques, achieving high scalability across various workload types by efficiently handling both similar and reverse operations.
Contribution
The paper introduces DECS, a novel dynamic elimination-combining stack algorithm that outperforms existing algorithms in scalability for diverse workloads.
Findings
DECS scales significantly better than prior stack algorithms.
DECS effectively handles both symmetric and asymmetric workloads.
DECS maintains low overhead similar to elimination-backoff stacks.
Abstract
Two key synchronization paradigms for the construction of scalable concurrent data-structures are software combining and elimination. Elimination-based concurrent data-structures allow operations with reverse semantics (such as push and pop stack operations) to "collide" and exchange values without having to access a central location. Software combining, on the other hand, is effective when colliding operations have identical semantics: when a pair of threads performing operations with identical semantics collide, the task of performing the combined set of operations is delegated to one of the threads and the other thread waits for its operation(s) to be performed. Applying this mechanism iteratively can reduce memory contention and increase throughput. The most highly scalable prior concurrent stack algorithm is the elimination-backoff stack. The elimination-backoff stack provides high…
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.
Code & Models
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsDistributed systems and fault tolerance · Optimization and Search Problems · Parallel Computing and Optimization Techniques
