Non-blocking k-ary Search Trees
Loading...
Date
Authors
Journal Title
Journal ISSN
Volume Title
Publisher
Springer Berlin Heidelberg
Abstract
This paper presents the first concurrent non-blocking k-ary search tree. Our data structure generalizes the recent non-blocking binary search tree of Ellen et al. [5] to trees in which each internal node has k children. Larger values of k decrease the depth of the tree, but lead to higher contention among processes performing updates to the tree. Our Java implementation uses single-word compare-and-set operations to coordinate updates to the tree. We present experimental results from a 16-core Sun machine with 128 hardware contexts, which show that our implementation achieves higher throughput than the non-blocking skip list of the Java class library and the leading lock-based concurrent search tree of Bronson et al. [3].
Description
Accepted author manuscript of the OPODIS 2011 paper, 16 pages; the published edition is pp. 207–221. This peer-reviewed manuscript is not the Version of Record and excludes publisher production changes. Published-edition copyright 2011 Springer-Verlag Berlin Heidelberg. Final authenticated version: https://doi.org/10.1007/978-3-642-25873-2_15. Use is subject to Springer Nature’s accepted-manuscript terms: https://www.springernature.com/gp/open-research/policies/accepted-manuscript-terms. Also includes the selected local 52-page expanded manuscript associated with York University Technical Report CSE-2011-04, which is not separately peer reviewed. PDFs unchanged; no new Creative Commons licence assigned.