Computational Fluid Dynamics (CFD) is a field of computational physics that has a very high utilization of modern Advanced Research Computing (ARC) resources. The spatial and temporal resolution required to solve modern CFD problems means that it is well suited to take advantage of the full benefits of large-scale distributed memory parallelization that is available on high-performance computing (HPC) systems. As CFD tools have progressed over the past years, their robustness, predictive capabilities, and user-friendliness have drastically improved, which means that these tools are increasingly being adopted by non-traditional HPC users such as new graduate students, experimentalists, theoreticians, and even student design teams.
This course is intended to help learners with a basic understanding of fluid dynamics and CFD bridge the knowledge gap towards the effective utilization of CFD on modern HPC architectures. This course will take an end-user approach to CFD tools on HPC systems (no coding) and, despite some prerequisites, will be given at an introductory/intermediate level (we will not cover advanced topics such as GPU or dynamic load-balancing).
At the end of the course, the learner will be able to:
- Develop a systematic approach to estimate the HPC cost of a CFD problem.
- Explain the impact of modelling assumptions on HPC cost.
- Optimize the parameters and simulations for effective HPC usage.
The course will use an entirely open source suite of CFD toolsets to mesh (Gmsh), simulate (OpenFoam/SU2), and visualize (Visit/Paraview). It should be noted that this is not a CFD course; therefore, undergraduate-level knowledge of CFD and numerical methods is expected, as well as a basic understanding of the Compute Ontario HPC system. The focus is on the effective use of CFD tools in modern HPC systems.
Course structure: The course will be delivered in a hybrid format with three 1.5-hours blocks covering the following topics:
- Planning and estimating HPC requirement (1.5 hours).
- Optimizing CFD simulations for HPC (1.5 hours).
- Running, visualizing, and organizing data (1.5 hours).
The synchronous segments will be used to explain the important theories and concepts and introduce the tutorial problem that the learners will be asked to work on individually between the synchronous sessions. The course is developed based on the newly developed ARC4CFD (https://arc4cfd.github.io) course.
Level: Intermediate
Length: Three 1.5-Hour Sessions (3 Days)
Format: Lecture + Hands-on
Prerequisites:
- Undergraduate-level knowledge of fluid dynamics (ideally with some knowledge of turbulence), CFD, and numerical methods.
- Teacher: Jean-Pierre Hickey