English

Finer-grained Locking in Concurrent Dynamic Planar Convex Hulls

Distributed, Parallel, and Cluster Computing 2017-02-13 v1

Abstract

The convex hull of a planar point set is the smallest convex polygon containing each point in the set. The dynamic convex hull problem concerns efficiently maintaining the convex hull of a set of points subject to additions and removals. One algorithm for this problem uses two external balanced binary search trees (BSTs) (M. H. Overmars, J. van Leeuwen 1981). We present the first concurrent solution for this problem, which uses a single BST that stores references to intermediate convex hull solutions at each node. We implement and evaluate two lock-based approaches: a) fine-grained locking, where each node of the tree is protected by a lock, and b) "finer-grained locking", where each node contains a separate lock for each of the left and right chains. In our throughput experiments, we observe that finer-grained locking yields an 8-60% improvement over fine-grained locking, and a 38-61x improvement over coarsegrained locking and software transactional memory (STM). When applied to find the convex hull of static point sets, our approach outperforms a parallel divide-and-conquer implementation by 2-4x using an equivalent number of threads.

Keywords

Cite

@article{arxiv.1702.03008,
  title  = {Finer-grained Locking in Concurrent Dynamic Planar Convex Hulls},
  author = {K. Alex Mills and James Smith},
  journal= {arXiv preprint arXiv:1702.03008},
  year   = {2017}
}

Comments

4 pages; 2 figures; brief announcement submitted to SPAA 2017

R2 v1 2026-06-22T18:14:24.355Z