1. Concurrent linearizable nearest neighbour search in LockFree-kD-tree.
- Author
-
Chatterjee, Bapi, Walulya, Ivan, and Tsigas, Philippas
- Subjects
- *
DATA structures , *SEARCH algorithms - Abstract
• The included proof is generic and presents a useful contour for proving correctness – linearizability and lock-freedom – of similar data structures. • A lock-free Approximate Nearest Neighbour Search algorithm is presented. • The lock-free algorithms are thoroughly evaluated to benchmark their comparative experimental performance. The Nearest neighbour search (NNS) is a fundamental problem in many application domains dealing with multidimensional data. In a concurrent setting, where dynamic modifications are allowed, a linearizable implementation of the NNS is highly desirable. This paper introduces the LockFree-kD-tree (LFkD-tree): a lock-free concurrent kD-tree, which implements an abstract data type (ADT) that provides the operations Add, Remove, Contains, and NNS. Our implementation is linearizable. The operations in the LFkD-tree use single-word read and compare-and-swap (▪) atomic primitives, which are readily supported on available multi-core processors. We experimentally evaluate the LFkD-tree using several benchmarks comprising real-world and synthetic datasets. The experiments show that the presented design is scalable and achieves significant speed-up compared to the implementations of an existing sequential kD-tree and a recently proposed multidimensional indexing structure, PH-tree. [ABSTRACT FROM AUTHOR]
- Published
- 2021
- Full Text
- View/download PDF