High-Performance Computation of Distributed-Memory Parallel 3D Voronoi and Delaunay Tessellation

Computing a Voronoi or Delaunay tessellation from a set of points is a core part of the analysis of many simulated and measured datasets: N-body simulations, molecular dynamics codes, and LIDAR point clouds are just a few examples. Such computational geometry methods are common in data analysis and visualization, but as the scale of simulations and observations surpasses billions of particles, the existing serial and shared memory algorithms no longer suffice. A distributed-memory scalable parallel algorithm is the only feasible approach. The primary contribution of this paper is a new parallel Delaunay and Voronoi tessellation algorithm that automatically determines which neighbor points need to be exchanged among the sub domains of a spatial decomposition. Other contributions include periodic and wall boundary conditions, comparison of our method using two popular serial libraries, and application to numerous science datasets.

[1]  Robert B. Ross,et al.  A New Flexible MPI Collective I/O Implementation , 2006, 2006 IEEE International Conference on Cluster Computing.

[2]  K. Bowers,et al.  Ultrahigh performance three-dimensional electromagnetic relativistic kinetic plasma simulationa) , 2008 .

[3]  Raimund Seidel,et al.  The Nature and Meaning of Perturbations in Geometric Computing , 1994, STACS.

[4]  Mark de Berg,et al.  Computational geometry: algorithms and applications , 1997 .

[5]  Robert B. Ross,et al.  Scalable parallel building blocks for custom data analysis , 2011, 2011 IEEE Symposium on Large Data Analysis and Visualization.

[6]  Hal Finkel,et al.  HACC , 2016, Commun. ACM.

[7]  Pierre Alliez,et al.  CGAL - The Computational Geometry Algorithms Library , 2011 .

[8]  Guy E. Blelloch,et al.  Design and Implementation of a Practical Parallel Delaunay Algorithm , 1999, Algorithmica.

[9]  Xiaotie Deng,et al.  A randomized parallel 3D convex hull algorithm for coarse grained multicomputers , 1995, SPAA '95.

[10]  Remco C. Veltkamp,et al.  Generic Geometric Programming in the Computational Geometry Algorithms Library , 1999, Comput. Graph. Forum.

[11]  David P. Dobkin,et al.  The quickhull algorithm for convex hulls , 1996, TOMS.

[12]  T. Kehl,et al.  The Purpose of Computing Is Insight, Not Numbers , 1966 .

[13]  Katrin Heitmann,et al.  The Accelerated Universe , 2010, Computing in Science & Engineering.

[14]  Jianwei Li,et al.  Parallel netCDF: A High-Performance Scientific I/O Interface , 2003, ACM/IEEE SC 2003 Conference (SC'03).

[15]  Mark H. Overmars Designing the Computational Geometry Algorithms Library CGAL , 1996, WACG.

[16]  Jack Snoeyink,et al.  A Comparison of Five Implementations of 3D Delaunay Tessellation , 2005 .

[17]  Hal Finkel,et al.  Meshing the Universe: Integrating Analysis in Cosmological Simulations , 2012, 2012 SC Companion: High Performance Computing, Networking Storage and Analysis.

[18]  S. Glotzer,et al.  Stability of the double gyroid phase to nanoparticle polydispersity in polymer-tethered nanosphere systems , 2009 .

[19]  Robert B. Ross,et al.  Versatile Communication Algorithms for Data Analysis , 2012, EuroMPI.

[20]  C. Lawson Software for C1 Surface Interpolation , 1977 .

[21]  Herbert Edelsbrunner,et al.  Incremental topological flipping works for regular triangulations , 1992, SCG '92.

[22]  Chang-Sung Jeong An improved parallel algorithm for constructing Voronoi diagram on a mesh-connected computer , 1991, Parallel Comput..

[23]  William Gropp,et al.  MPI-2: Extending the Message-Passing Interface , 1996, Euro-Par, Vol. I.

[24]  Jean M. Sexton,et al.  Nyx: A MASSIVELY PARALLEL AMR CODE FOR COMPUTATIONAL COSMOLOGY , 2013, J. Open Source Softw..

[25]  S. Glotzer,et al.  Phase behavior and complex crystal structures of self-assembled tethered nanoparticle telechelics. , 2014, Nano letters.

[26]  R. Scopigno,et al.  Parallel 3D Delaunay Triangulation , 1993, Comput. Graph. Forum.

[27]  Hal Finkel,et al.  The Universe at extreme scale: Multi-petaflop sky simulation on the BG/Q , 2012, 2012 International Conference for High Performance Computing, Networking, Storage and Analysis.

[28]  Jesper Larsson Träff,et al.  MPI on a Million Processors , 2009, PVM/MPI.

[29]  Kenneth L. Clarkson,et al.  Applications of random sampling in computational geometry, II , 1988, SCG '88.

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

[31]  Russ Miller,et al.  Efficient Parallel Convex Hull Algorithms , 1988, IEEE Trans. Computers.

[32]  Arie Shoshani,et al.  Parallel I/O, analysis, and visualization of a trillion particle simulation , 2012, 2012 International Conference for High Performance Computing, Networking, Storage and Analysis.

[33]  Herbert Edelsbrunner,et al.  Geometry and Topology for Mesh Generation , 2001, Cambridge monographs on applied and computational mathematics.

[34]  Marcus Müller,et al.  Theoretically informed coarse grain simulations of polymeric systems. , 2009, The Journal of chemical physics.

[35]  Chung-Hsing Hsu,et al.  Hybrid petacomputing meets cosmology: The Roadrunner Universe project , 2009 .