← all papers Β· overview

Parallel \(k\)d-tree With Batch Updates

Β·2024

Abstract

The \(k\)d-tree is one of the most widely used data structures to manage multi-dimensional data. Due to the ever-growing data volume, it is imperative to consider parallelism in \(k\)d-trees. However, we observed challenges in existing parallel kd-tree implementations, for both constructions and updates. The goal of this paper is to develop efficient in-memory \(k\)d-trees by supporting high parallelism and cache-efficiency. We propose the Pkd-tree (Parallel \(k\)d-tree), a parallel \(k\)d-tree that is efficient both in theory and in practice. The Pkd-tree supports parallel tree construction, batch update (insertion and deletion), and various queries including k-nearest neighbor search, range query, and range count. We proved that our algorithms have strong theoretical bounds in work (sequential time complexity), span (parallelism), and cache complexity. Our key techniques include 1) an efficient construction algorithm that optimizes work, span, and cache complexity simultaneously, a

Related papers