High-Performance Delaunay Triangulation for Many-Core Computers

We present an efficient implementation of a Dwyer-style Delaunay triangulation algorithm that runs in O(N) expected time. An implicit quad-tree is constructed directly from the floating point bit patterns of the input points by sorting the corresponding Morton codes with a radix sorting procedure. This unique structure adapts elegantly to any (non-)uniform distribution of input points and increases the accuracy of the merging calculations by grouping floating point values with similar bit patterns. Our implementation allows for easy parallelization and we demonstrate a record construction speed of one Billion Delaunay triangles in just 8s on a many-core SMP machine.

[1]  Jonathan Richard Shewchuk,et al.  Robust adaptive floating-point geometric predicates , 1996, SCG '96.

[2]  Tiow Seng Tan,et al.  Computing 2D Constrained Delaunay Triangulation Using the GPU , 2013, IEEE Transactions on Visualization and Computer Graphics.

[3]  Jonathan Richard Shewchuk,et al.  Triangle: Engineering a 2D Quality Mesh Generator and Delaunay Triangulator , 1996, WACG.

[4]  Kevin Buchin Constructing Delaunay Triangulations along Space-Filling Curves , 2009, ESA.

[5]  Rex A. Dwyer A faster divide-and-conquer algorithm for constructing delaunay triangulations , 1987, Algorithmica.

[6]  Robert L. Scot Drysdale,et al.  A comparison of sequential Delaunay triangulation algorithms , 1995, SCG '95.

[7]  Günter Rote,et al.  Incremental constructions con BRIO , 2003, SCG '03.

[8]  Tiow Seng Tan,et al.  A GPU accelerated algorithm for 3D Delaunay triangulation , 2014, I3D '14.

[9]  Irene Gargantini,et al.  An effective way to represent quadtrees , 1982, CACM.

[10]  Tiow Seng Tan,et al.  Computing two-dimensional Delaunay triangulation using graphics hardware , 2008, I3D '08.

[11]  Leonidas J. Guibas,et al.  Primitives for the manipulation of general subdivisions and the computation of Voronoi diagrams , 1983, STOC.

[12]  Steven Fortune,et al.  A sweepline algorithm for Voronoi diagrams , 1986, SCG '86.

[13]  Dinesh Manocha,et al.  Fast BVH Construction on GPUs , 2009, Comput. Graph. Forum.

[14]  David L. Millman,et al.  Parallel geometric algorithms for multi-core computers , 2010, Comput. Geom..

[15]  Leonidas J. Guibas,et al.  Randomized incremental construction of Delaunay and Voronoi diagrams , 1990, Algorithmica.

[16]  Leonidas J. Guibas,et al.  Randomized Incremental Construction of Delaunay and Voronoi Diagrams , 1990, ICALP.