Evaluating random forest classifiers to optimise load balancing of parallel mesh generation

6 September 2024

The numerical methods used to simulate fluid flows have received significant attention over the years, such that in many applications the solver itself is no longer the major bottleneck in a design workflow. 

Example mesh of the OpenFOAM motorbike test case generated by snappyHexMesh. N. Majksner & W. Remmerie; “Adaptive Mesh Refinement by Air Shaper”; https://wiki.openfoam.com/Adaptive_Mesh_Refinement_by_Air_Shaper; accessed 30th August 2024.

Above: Example mesh of the OpenFOAM motorbike test case generated by snappyHexMesh. N. Majksner & W. Remmerie; “Adaptive Mesh Refinement by Air Shaper". See: https://wiki.openfoam.com/Adaptive_Mesh_Refinement_by_Air_Shaper; accessed 30th August 2024.

 

To solve these fluid flow problems numerically, the governing equations are approximated discretely on a mesh, which represents the flow domain. One example is the airflow around a car. An optimal mesh balances resolution requirements against computational demands in order to maximise solution accuracy at minimal cost. Generating such a mesh is a challenging problem, and one that has been relatively neglected in the past, so that it is now cited as one of the major issues inhibiting simulation-based design cycles due to several factors, including suitability for large scale high performance computing (HPC) applications [1].

In this the paper "Evaluating random forest classifiers to optimise load balancing of parallel mesh generation", the parallel performance of the OpenFOAM [2] snappyHexMesh mesh generator and its dependence on the selection and configuration of mesh partitioners is investigated. The results show the built-in hierarchical partitioning scheme yields the best performance, however this is dependent on user input to describe the partitioning order; a poor choice here can be severely detrimental. 

To address this issue a solution based on machine learning to predict the optimal parameter settings is proposed. A random forest classifier was developed by testing the performance variation of snappyHexMesh with different hierarchical partitioner settings when meshing a range of geometries. After training on this dataset, the random forest classifier achieved a 71% prediction accuracy for the optimal configuration of the hierarchical partitioner, demonstrating its usefulness as a proof of concept approach. Further work will extend the range of test cases to increase the geometric complexity considered and investigate its ability to make accurate predictions across different HPC machines.

PhD research

This article was co-authored by Ananya Gangopadhyay, a third-year PhD student at EPCC whose work is focused on reducing the cost of mesh generation as part of a CFD-based industrial design workflow. Ananya presented her work investigating the application of machine learning methods to optimise the load balancing operation in the OpenFOAM snappyHexMesh parallel mesh generator at the Parallel CFD International Conference 2024 (ParCFD’24) conference. Funding from the BWT Alpine F1 Team is gratefully acknowledged. 

You can read more about Ananya's work elsewhere on our website: Meet our PhD students.

References

[1] J.P. Slotnick et al.; “CFD Vision 2030 Study: A Path to Revolutionary Computational Aerosciences”; Technical Report NASA/CR-2014-218178 (2014).

[2] OpenFOAM; https://www.openfoam.com/; accessed 29 August 2024.

Links

Paper: Evaluating random forest classifiers to optimise load balancing of parallel mesh generation

Authors

Dr Paul Bartholomew
Prof Michèle Weiland
Michele Weiland