Analysis and Evaluation of Non-Blocking Interpolation Search Trees
We start by summarizing the recently proposed implementation of the first non-blocking concurrent interpolation search tree (C-IST) data structure. We then analyze the individual operations of the C-IST, and show that they are correct and linearizable. We furthermore show that lookup (and several ot...
Saved in:
Main Authors | , , |
---|---|
Format | Journal Article |
Language | English |
Published |
02.01.2020
|
Subjects | |
Online Access | Get full text |
Cover
Loading…
Summary: | We start by summarizing the recently proposed implementation of the first
non-blocking concurrent interpolation search tree (C-IST) data structure. We
then analyze the individual operations of the C-IST, and show that they are
correct and linearizable. We furthermore show that lookup (and several other
non-destructive operations) are wait-free, and that the insert and delete
operations are lock-free. We continue by showing that the C-IST has the
following properties. For arbitrary key distributions, this data structure
ensures worst-case $O(\log n + p)$ amortized time for search, insertion and
deletion traversals. When the input key distributions are smooth, lookups run
in expected $O(\log \log n + p)$ time, and insertion and deletion run in
expected amortized $O(\log \log n + p)$ time, where $p$ is a bound on the
number of threads. Finally, we present an extended experimental evaluation of
the non-blocking IST performance. |
---|---|
DOI: | 10.48550/arxiv.2001.00413 |