Parallel Range, Segment and Rectangle Queries with Augmented Maps

03/23/2018
by   Yihan Sun, et al.
0

The range, segment and rectangle query problems are fundamental problems in computational geometry, and have extensive applications in many domains. Despite the significant theoretical work on these problems, efficient implementations can be complicated. We know of very few practical implementations of the algorithms in parallel, and most implementations do not have tight theoretical bounds. We focus on simple and efficient parallel algorithms and implementations for these queries, which have tight worst-case bound in theory and good parallel performance in practice. We propose to use a simple framework (the augmented map) to model the problem. Based on the augmented map interface, we develop both multi-level tree structures and sweepline algorithms supporting range, segment and rectangle queries in two dimensions. For the sweepline algorithms, we propose a parallel paradigm and show corresponding cost bounds. All of our data structures are work-efficient to build in theory and achieve a low parallel depth. The query time is almost linear to the output size. We have implemented all the data structures described in the paper using a parallel augmented map library. Based on the library each data structure only requires about 100 lines of C++ code. We test their performance on large data sets (up to 10^8 elements) and a machine with 72-cores (144 hyperthreads). The parallel construction achieves 32-68x speedup. Speedup numbers on queries are up to 126-fold. Our sequential implementation outperforms the CGAL library by at least 2x in both construction and queries. Our sequential implementation can be slightly slower than the R-tree in the Boost library in some cases (0.6-2.5x), but has significantly better query performance (1.6-1400x) than Boost.

READ FULL TEXT

page 1

page 2

page 3

page 4

research
03/23/2018

Parallel Range and Segment Queries with Augmented Maps

The range and segment query problems are fundamental problems in computa...
research
07/05/2022

ParGeo: A Library for Parallel Computational Geometry

This paper presents ParGeo, a multicore library for computational geomet...
research
10/25/2018

Batch-Parallel Euler Tour Trees

The dynamic trees problem is to maintain a forest undergoing edge insert...
research
12/12/2019

Theoretically-Efficient and Practical Parallel DBSCAN

The DBSCAN method for spatial clustering has received significant attent...
research
07/25/2020

Large scale simulation of pressure induced phase-field fracture propagation using Utopia

Non-linear phase field models are increasingly used for the simulation o...
research
06/28/2021

Experimental Comparison of PC-Trees and PQ-Trees

PQ-trees and PC-trees are data structures that represent sets of linear ...
research
07/14/2018

A Simple and Space Efficient Segment Tree Implementation

The segment tree is an extremely versatile data structure. In this paper...

Please sign up or login with your details

Forgot password? Click here to reset