Lukas Gnam
Dipl.-Ing.
Worked for IµE from 18-04-2016 to 17-04-2019.
Publications

Biography

Lukas Gnam was born 1991 in Wr. Neustadt, Austria. He received his Bachelor's Degree in Technical Physics and his Master's Degree in Physical Energy and Measurement Engineering from the TU Wien in 2014 and 2016, respectively. After finishing his studies he joined the Institute of Microelectronics in April 2016, where he is currently working on his doctoral degree. His research focus is on high performance parallel mesh generation algorithms.

A Flexible Shared-Memory Parallel Mesh Adaptation Framework

Numerical simulation is an important tool used in various fields of computational science and engineering. The models to be solved by simulation are predominantly based on equations that require the discretization of a spatial domain. The accuracy of the simulation results is heavily influenced by the properties of the underlying spatial discretization: The mesh. Thus, adapting a mesh to meet certain criteria is an integral step towards achieving the desired accuracy and high computational performance. Given the trend of adding ever more cores to a compute node, efficiently exploiting the available on-node parallelism of modern multi-core systems is essential. This work introduces a flexible shared-memory parallelized mesh adaptation framework. We show the integrability of available serial mesh adaptation algorithms and their applicability to multi-region meshes.

The first step of the framework is the partitioning of the initial mesh into a user-defined number of sub-partitions using mt-METIS. Mt-METIS is a multi-threaded version of the graph and mesh partitioning software METIS. Subsequently, all sub-partitions are assigned to independent sets using graph coloring algorithms. The set of graph coloring algorithms included in this framework ranges from serial unbalanced algorithms to shared-memory parallel methods for both balanced and unbalanced coloring. The created independent sets are then processed in parallel using two different adaptation algorithms: A template-based algorithm and a Delaunay-based algorithm provided by the TetGen software.

We perform benchmarks using a cube geometry, as well as a model of a microelectronic transistor device structure, to demonstrate the scalability of our approach and investigate the resulting element quality. The obtained speedups for this inherently memory-bound problem and for constant problem sizes range between 4.6 and 8.6 using 16 threads. Furthermore, we prove that our parallel workflow is able to significantly outperform the original serial TetGen software for big meshes. Additionally, our investigations show that the Delaunay-based meshing technique included in TetGen produces higher-quality meshes than a template-based approach and that the Delaunay-based approach is able to outperform the template-based approach with respect to performance in some cases. For anisotropic mesh adaptation, however, the template-based solution is attractive. Possible future extensions could focus on investigating other mesh healing and domain decomposition approaches.


Fig. 1: Diagram of the full shared-memory parallelized mesh adaptation framework depicting the single modules, with the exchangeable blocks shown in purple, enabling for example the integration of different serial meshing algorithms. Since the color identifiers (Color IDs) are denoted using unique integers, the loop starts with Color ID 0.

Fig. 2: Strong scaling results for the two test geometries using 1,024 partitions. Dotted lines show the data from the balanced coloring prior to the application of the adaptation algorithms. Additionally, the left column shows the serial runtime of TetGen (TetGen Orig.).

Fig. 3: Resulting mesh qualities for both test geometries using 1,024 partitions. The left column depicts the edge ratios and the right column the minimum dihedral angles occurring in the tetrahedrons.