Parallel mesh generation
Parallel mesh generation in numerical analysis is a new research area between the boundaries of two scientific computing disciplines: computational geometry and parallel computing.[1] Parallel mesh generation methods decompose the original mesh generation problem into smaller subproblems which are solved (meshed) in parallel using multiple processors or threads. The existing parallel mesh generation methods can be classified in terms of two basic attributes:
- the sequential technique used for meshing the individual subproblems and
- the degree of coupling between the subproblems.
One of the challenges in parallel mesh generation is to develop parallel meshing software using off-the-shelf sequential meshing codes.
Overview
Parallel mesh generation procedures in general decompose the original 2-dimensional (2D) or 3-dimensional (3D) mesh generation problem into N smaller subproblems which are solved (i.e., meshed) concurrently using P processors or threads.[1] The subproblems can be formulated to be either tightly coupled,[2][3] partially coupled[4][5] or even decoupled.[6][7] The coupling of the subproblems determines the intensity of the communication and the amount/type of synchronization required between the subproblems.
The challenges in parallel mesh generation methods are: to maintain stability of the parallel mesher (i.e., retain the quality of finite elements generated by state-of-the-art sequential codes) and at the same time achieve 100% code re-use (i.e., leverage the continuously evolving and fully functional off-the-shelf sequential meshers) without substantial deterioration of the scalability of the parallel mesher.
There is a difference between parallel mesh generation and parallel triangulation. In parallel triangulation a pre-defined set of points is used to generate in parallel triangles that cover the convex hull of the set of points. A very efficient algorithm for parallel Delaunay triangulations appears in Blelloch et al.[8] This algorithm is extended in Clemens and Walkington[9] for parallel mesh generation.
Parallel mesh generation software
While many solvers have been ported to parallel machines, grid generators have left behind. Still the preprocessing step of mesh generation remains a sequential bottleneck in the simulation cycle. That is why the need for developing of stable 3D parallel grid generator is well-justified.
A parallel version of the MeshSim mesh generator by Simmetrix Inc.,[10] is available for both research and commercial use. It includes parallel implementations of surface, volume and boundary layer mesh generation as well as parallel mesh adaptivity. The algorithms it uses are based on those in reference [4] and are scalable (both in the parallel sense and in the sense that they give speedup compared to the serial implementation) and stable. For multicore or multiprocessor systems, there is also a multithreaded version of these algorithms that are available in the base MeshSim product [11]
Another parallel mesh generator is D3D,[12] was developed by Daniel Rypl[13] at Czech Technical University in Prague. D3D is a mesh generator capable to discretize in parallel (or sequentially) 3D domains into mixed meshes.
BOXERMesh [14] is an unstructured hybrid mesh generator [15] developed by Cambridge Flow Solutions.[16] Implemented as distributed-memory fully parallelised software, it is specifically designed to overcome the traditional bottlenecks constraining engineering simulation, delivering advanced meshing on geometries of arbitrary complexity and size. Its scalability has been demonstrated on very large meshes generated on HPC clusters.
Challenges in parallel mesh generation
It takes about ten to fifteen years to develop the algorithmic and software infrastructure for sequential industrial strength mesh generation libraries. Moreover, improvements in terms of quality, speed, and functionality are open ended and permanent which makes the task of delivering state-of-the-art parallel mesh generation codes even more difficult.
An area with immediate high benefits to parallel mesh generation is domain decomposition. The DD problem as it is posed in [17] is still open for 3D geometries and its solution will help to deliver stable and scalable methods that rely on off-the-shelf mesh generation codes for Delaunay and Advancing Front Techniques.
Finally, a long term investment to parallel mesh generation is to attract the attention of mathematicians with open problems in mesh generation and broader impact in mathematics.
References
- 1 2 Nikos Chrisochoides, Parallel Mesh Generation, Chapter in Numerical Solution of Partial Differential Equations on Parallel Computers, (Eds. Are Magnus Bruaset, Aslak Tveito), Springer-Verlag, pp 237-259, 2005.
- ↑ Nikos Chrisochoides and Demian Nave. Parallel Delaunay mesh generation kernel. Int. J. Numer. Meth. Engng., 58:161--176, 2003
- ↑ Lohner, J.Camberos, and M.Marshal. Parallel Unstructured Grid Generation. Chapter in Unstructured Scientific Computation on Scalable Multiprocessors. (Eds. Piyush Mehrotra and Joel Saltz), pp 31--64, MIT Press, 1990.
- 1 2 H. de Cougny and M.Shephard. Parallel volume meshing using face removals and hierarchical repartitioning. Comp. Meth. Appl. Mech. Engng., 174(3-4):275--298, 1999.
- ↑ Andrey Chernikov and Nikos Chrisochoides. Parallel Guaranteed Quality Planar Delaunay Mesh Refinement Concurrent Point Insertion. SIAM Journal for Scientific Computing, Vol. 28, No. 5, pp 1907-1926, 2006.
- ↑ J. Galtier and P. L. George. Prepartitioning as a way to mesh subdomains in parallel. Special Symposium on Trends in Unstructured Mesh Generation, pp 107--122. ASME/ASCE/SES, 1997.
- ↑ Leonidas Linardakis and Nikos Chrisochoides. Delaunay Decoupling Method for Parallel Guaranteed Quality Planar Mesh Generation. SIAM Journal for Scientific Computing, Vol. 27, No. 4, pp 1394-1423, 2006.
- ↑ G. E. Blelloch, J.C. Hardwick, G.~L. Miller, and D. Talmor, Design and implementation of a practical parallel Delaunay algorithm, Algorithmica, 24 (1999), pp. 243--269.
- ↑ Clemens Kadow and Noel Walkington. Design of a projection-based parallel Delaunay mesh generation and refinement algorithm. In proceedings of Fourth Symposium on Trends in Unstructured Mesh Generation, 2003.
- ↑ Parallel MeshSim
- ↑ MeshSim
- ↑ D3D Mesh Generator Web page
- ↑ University Web page of Daniel Rypl, http://mech.fsv.cvut.cz/~dr/
- ↑ BOXERMesh
- ↑ Scalable Parallel Mesh Generation
- ↑ Cambridge Flow Solutions
- ↑ Chrisochoides N., A Survey of Parallel Mesh Generation Methods, Brown University, Providence RI - 2005.