English

The Splay-List: A Distribution-Adaptive Concurrent Skip-List

Distributed, Parallel, and Cluster Computing 2020-08-04 v1 Data Structures and Algorithms

Abstract

The design and implementation of efficient concurrent data structures have seen significant attention. However, most of this work has focused on concurrent data structures providing good \emph{worst-case} guarantees. In real workloads, objects are often accessed at different rates, since access distributions may be non-uniform. Efficient distribution-adaptive data structures are known in the sequential case, e.g. the splay-trees; however, they often are hard to translate efficiently in the concurrent case. In this paper, we investigate distribution-adaptive concurrent data structures and propose a new design called the splay-list. At a high level, the splay-list is similar to a standard skip-list, with the key distinction that the height of each element adapts dynamically to its access rate: popular elements ``move up,'' whereas rarely-accessed elements decrease in height. We show that the splay-list provides order-optimal amortized complexity bounds for a subset of operations while being amenable to efficient concurrent implementation. Experimental results show that the splay-list can leverage distribution-adaptivity to improve on the performance of classic concurrent designs, and can outperform the only previously-known distribution-adaptive design in certain settings.

Keywords

Cite

@article{arxiv.2008.01009,
  title  = {The Splay-List: A Distribution-Adaptive Concurrent Skip-List},
  author = {Vitaly Aksenov and Dan Alistarh and Alexandra Drozdova and Amirkeivan Mohtashami},
  journal= {arXiv preprint arXiv:2008.01009},
  year   = {2020}
}
R2 v1 2026-06-23T17:36:31.219Z