Three-dimensional delaunay refinement for multi-core processors

We develop the first ever fully functional three-dimensional guaranteed quality parallel graded Delaunay mesh generator. First, we prove a criterion and a sufficient condition of Delaunay-independence of Steiner points in three dimensions. Based on these results, we decompose the iteration space of the sequential Delaunay refinement algorithm by selecting independent subsets from the set of the candidate Steiner points without resorting to rollbacks. We use an octree which overlaps the mesh for a coarse-grained decomposition of the set of candidate Steiner points based on their location. We partition the worklist containing poor quality tetrahedra into independent lists associated with specific separated leaves of the octree. Finally, we describe an example parallel implementation using a publicly available state-of-the art sequential Delaunay library (Tetgen). This work provides a case study for the design of abstractions and parallel frameworks for the use of complex labor intensive sequential codes on multicore architectures.

[1]  L. Paul Chew,et al.  Guaranteed-quality mesh generation for curved surfaces , 1993, SCG '93.

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

[3]  S. Rao Kosaraju,et al.  A decomposition of multidimensional point sets with applications to k-nearest-neighbors and n-body potential fields , 1995, JACM.

[4]  Gary L. Miller,et al.  A Delaunay based numerical method for three dimensions: generation, formulation, and partition , 1995, STOC '95.

[5]  Andrey N. Chernikov,et al.  Three-dimensional Semi-generalized Point Placement Method for Delaunay Mesh Refinement , 2007, IMR.

[6]  Tamal K. Dey,et al.  Weighted Delaunay Refinement for Polyhedra with Small Angles , 2005, IMR.

[7]  Xiaoning Ding,et al.  Multigrain parallel Delaunay Mesh generation: challenges and opportunities for multithreaded architectures , 2005, ICS '05.

[8]  Keshav Pingali,et al.  Optimistic parallelism requires abstractions , 2009, CACM.

[9]  Mark S. Shephard,et al.  Parallel three-dimensional mesh generation , 1994 .

[10]  Paul-Louis George,et al.  Delaunay triangulation and meshing : application to finite elements , 1998 .

[11]  Xiang-Yang Li Generating Well-Shaped d-dimensional Delaunay Meshes , 2001, COCOON.

[12]  Andrey N. Chernikov,et al.  Generalized Delaunay Mesh Refinement: From Scalar to Parallel , 2006, IMR.

[13]  Andrey N. Chernikov,et al.  Parallel Guaranteed Quality Delaunay Uniform Mesh Refinement , 2006, SIAM J. Sci. Comput..

[14]  Adrian Bowyer,et al.  Computing Dirichlet Tessellations , 1981, Comput. J..

[15]  W. Frey Selective refinement: A new strategy for automatic node placement in graded triangular meshes , 1987 .

[16]  Kyle A. Gallivan,et al.  The gSOAP Toolkit for Web Services and Peer-to-Peer Computing Networks , 2002, 2nd IEEE/ACM International Symposium on Cluster Computing and the Grid (CCGRID'02).

[17]  Jonathan Richard Shewchuk,et al.  Tetrahedral mesh generation by Delaunay refinement , 1998, SCG '98.

[18]  Nikos Chrisochoides,et al.  Guaranteed: quality parallel delaunay refinement for restricted polyhedral domains , 2002, SCG '02.

[19]  L. Paul Chew,et al.  Guaranteed-quality Delaunay meshing in 3D (short version) , 1997, SCG '97.

[20]  D. F. Watson Computing the n-Dimensional Delaunay Tesselation with Application to Voronoi Polytopes , 1981, Comput. J..

[21]  Konstantinos Kyriakopoulos,et al.  The impact of data dependence analysis on compilation and program parallelization , 2003, ICS '03.

[22]  L. Oliker,et al.  Parallelization of a Dynamic Unstructured Application using Three Leading Paradigms , 1999, ACM/IEEE SC 1999 Conference (SC'99).

[23]  Rainald Löhner,et al.  Parallel Advancing Front Grid Generation , 1999, IMR.

[24]  David H. Laidlaw,et al.  Simulation and Visualization of Air Flow Around Bat Wings During Flight , 2005, International Conference on Computational Science.

[25]  Nikos Chrisochoides,et al.  Algorithm 870: A static geometric Medial Axis domain decomposition in 2D Euclidean space , 2008, TOMS.

[26]  ParallelismChih,et al.  Compiling Sequential Programs for Speculative , 1993 .