ECFD workshop, 8th edition, 2025

From Extreme CFD workshop
Revision as of 11:37, 10 February 2025 by Begou (Talk | contribs) (Hackathon GENCI - P. Begou, LEGI)

Jump to: navigation, search


Contents

 [hide

Description

  • Event from 27th of January to 7th of February 2025
  • Location: Centre Sportif de Normandie, Houlgate, near Caen (14)
  • Two types of sessions:
    • common technical presentations: roadmaps, specific points
    • mini-workshops. Potential workshops are listed below
  • Free of charge
  • Participants from academics, HPC center/experts and industry are welcome
  • The number of participants is limited to 68.
  • Objectives
    • Bring together experts in high-performance computing, applied mathematics and multi-physics CFDs
    • Identify the technological barriers of exaflopic CFD via numerical experiments
    • Identify industrial needs and challenges in high-performance computing
    • Propose action plans to add to the development roadmaps of the CFD codes
  • Organizers
    • Guillaume Balarac (LEGI), Simon Mendez (IMAG), Pierre Bénard, Vincent Moureau, Léa Voivenel (CORIA).


Ecfd8.png


Acknowledgments ecfd8.png

News

  • 23/10/2024: First announcement of the 8th Extreme CFD Workshop & Hackathon !
  • 22/11/2024: Deadline to submit your project

Thematics / Mini-workshops

These mini-workshops may change and cover more or less topics. This page will be adapted according to your feedback.

To come...

Projects

Hackathon GENCI - P. Begou, LEGI

This ECFD8 GENCI Hackathon was a rich event, involving 4 differents CFD codes (AVBP, ParaDIGM, SONICS and YALES2) using various paradigms (C++/cuda/hip, Fortran/OpenMP/OpenACC) with several SDKs (AMD, Cray/HPE, Nvidia, Gnu) on a large range of GPU architectures (Nvidia A100, GH100, AMD instinct Mi210, Mi250, Mi300). This two-week event benefited from a high level support from three HPC mentors, two on-site from AMD (J. Noudohouenou and A. Tsetoglou) and one remote from CINES (M. Boudaoud).

H1 - ParaDIGM and SONICS on GPU, B. Maugars, G. Staffelbach, R.Cazalbou and B. Michel (ONERA)

H2 - AVBP GPU offloading based on OpenMP, M.Ghenai, L. Legaux and A. Dauptain (CERFACS)

H3 - YALES2 GPU from OpenACC to OpenMP, P. Bégou (LEGI), V. Moureau, G. Lartigue (CORIA) and R. Dubois (IMAG)

This Hackathon focuses on running Yales2 code on AMD Instinct Mi250 and Mi300 GPUs of the Adastra supercomputer (CINES). Previously, a first solver in the Yales2 CFD code was successfully ported on the GPU accelerators of the Jean-Zay supercomputer (IDRIS) using Nvidia SDK but difficulties remain on Adastra AMD GPUs, mainly related to the available development tools. High compilation time and the impossibility to use debug flags at compile time as soon as OpenACC is enabled are a real challenge when tracking errors. The current project is to evaluate a freshly deployed version (at the begining of the workshop) of the AMD Fortran compiler. This requires moving to OpenMP paradigm, starting from scratch since the OpenACC branch has largely diverged from the master one while tracking spurious remaining bugs. If the AMD compiler is able to build the cpu version of Yales2 "out of the box" (wich is not the case for Cray Fortran), the compilation time for each file is significantly higher. However, setting up a 2 stages dynamic compilation process allows for high parallelism that is not possible with Cray Fortran 18 and the library build time drops from nearly 2 hours (Cray Fortran 18) to 17 minutes (Amd Fortran compiler). Large kernels have been ported from OpenACC to OpenMP, raising some difficulties when offloading intrinsics functions or using strutures attributes in kernels loops. These limitations were also known in the previous OpenACC work. The goal was mainly to check the correctness of the results. The offloading of the complex data structure of Yales2 code was then investigated. Here again some limitations of the "young" compiler were discovered and workarounds were implemented. Several reproducers were built during this ECFD8 and provided to developpers by the 2 on-site AMD engineers. Preliminary tests on micro-applications show good performances of the generated binaries proving that this compiler could be a serious alternative on AMD GPUs and the goal is now to focus on this SDK in an OpenMP strategy while checking the portablility of this new implementation in Nvidia, Cray/HPE (and Gnu ?) environments.

Mesh adaptation - A. Grenouilloux, ONERA & G. Balarac, LEGI

Numerics - M. Bernard, LEGI & G. Lartigue, CORIA

N7 -Implicit time advancement for low-Reynolds number flows with particles. S. Mendez, C. Raveleau (IMAG), M. El Moatamid, V. Moureau (CORIA)

IMAG runs numerous simulations of red blood cells under flow. Those simulations are at low Reynolds number (0.001 to 1.0, typically). Splitting of the time advancement is used to treat the diffusion terms implicitly, albeit with an important numerical cost: implicit diffusion is 50 to 60% of the computational cost. Recently, M. El Moatamid implemented a genral framework to deal with implicit time advancement for scalars. In this project, the general method has been transposed to the advancement of the velocity field in the ICS and RBC solvers of YALES2/YALES2BIO. This enables testing various linear solvers (GMRES based). However, such solvers do not decrease the CPU time compared to the existing implementation. However, while working on this, it was identified that residual recycling was not activated in the current implementation of the implicit diffusion. This sped up the implicit diffusion cost by 35%, for a total gain of 20% for the computation. In addition to this achievement, moving to the framework coded by Moncef will have other beneficial side effects: we anticipate simplifying the implementation, with an easier merging between YALES2BIO and YALES2. The method will also be implemented in the electrosatic solver, for which the Poisson problem should benefit from the new GMRES-based solvers. In addition, this project highlights the importance of improving the treatment of stiff source terms in the red blood cells simulations, to be able to overcome the current limitation in time step due to those term and have a chance to benefit from higher-order time schemes, efficient at high Fourier numbers.

Turbulence - L. Voivenel, CORIA & P. Bénard, CORIA

T1 - FSI-1D strategy for internal flows

T2 - Dynamic Smagorinsky in Dorothy

T3 - Turbulence injection strategy for compressible flows

T4 - Improve wind farm modeling and simulation workflow

The YALES2 library includes an advanced modular implementation of the Actuator Line Method (ALM). This approach remains state-of-the-art when performing an LES-based analysis of a wind turbine wake. The method also provides an accurate assessment of the aerodynamic loads applied on the turbine. Still, applying this method to investigate a wind farm flow can be challenging, both in terms of computational cost and simulation setup. For instance, an inadequate management of the wind turbine individual modeling parts in a HPC context can end up being the main bottleneck of the simulation. From another perspective, a wind farm is usually composed of more than 50 wind turbines. For such a case, setting up all YALES2 required inputs manually can be very tedious and error-prone. This project thus mainly aimed to optimize the YALES2 ALM implementation and the user experience around it. Additionally, a cost-effective alternative to the ALM when modeling wind farm flows, namely the Rotating Actuator Disk Method (ADM-R), has been implemented for further investigations.


WP1: Improve Actuator set rotor modelling

  • Parallel processing of the actuator sets used to model the wind turbines
 (Felix)
  • Rotating Actuator Disk Model (ADM-R):

According to the usual guidelines, the mesh requirements of the ALM, to profit entirely from its reachable accuracy, can be difficult to achieve or even unaffordable when simulating a wind farm flow, especially from the industrial point of view. Alternatives are available in the literature for this kind of application. Likely, the methods from the Actuator Disk family are the most prominent ones. Several kinds of implementation exist, which mostly differ by their capability to include the wake rotation. During the workshop, a new method from the Rotating Actuator Disk kind has been implemented and underwent an early validation on a single turbine setup. Applications to wind farm flows will follow.


WP2: Improve tools User Experience

 (Hakim)

T5 - Improve atmospheric inflow turbulence

Atmospheric inflow turbulence is generated using the precursor database method. A half-channel flow driven by a pressure gradient is used to obtain the inflow which is used as inlet boundary condition for the wind turbine simulation domain. This project aimed to improve the whole methodology, from generation to injection.

  • WP1: Improve inflow generation

Anand: pressure controller

  • WP2: Improve injection methodology (method A)

The previous workflow used plane probes in the ASCII format to sample the flow. The COWIT2 toolbox was used to convert the file into turbulence box (.man format). While functioning, this methodology had two major flaws. First the probe files are heavy ~O(10Go). Second, the method requires a lot of human effort, allowing numerous sources of errors. During this workshop, a new methodology has been developed. First, the probes are generated using the HDF5 format (now available for all probe types), leading to lighter file ~O(1Go). Second, Y2_tools is used to read HDF5 format (working for probes and temporals). HDF5 file is then converted into a Look-up Table. Finally, the Look-up Table is read directly by YALES2 as a boundary conditions.

  • WP3: Improve injection methodology (method B)

Even though improvements achieved in WP2 prove to be very handy while removing many potential human errors, injecting a turbulent inflow through wind boxes ('offline' precursor approach) can sometimes remain cumbersome for several reasons: (1) no periodicity is enforced in the streamwise direction of those boxes, (2) potential high memory consumption, and (3) the boxes need to be moved to other cores whenever a mesh adaptation occurs. An alternative consists in co-simulating the precursor flow and the flow of interest (refered as the 'successor' simulation) at the same time ('online' precursor approach). The inlet boundary condition for the successor flow is then obtained by mapping the outflow of the precursor domain. During the workshop, some work has been initiated to implement this kind of coupling using the CWIPI library, for which YALES2 provides already an interface.

T6 - FSI model in Dorothy

Two Phase Flow - J. Leparoux, SAFRAN & J. Carmona, CORIA

TP1 - Towards very small contact angles in Nucleate boiling

Participants: Henri Lam (LEGI), Mohammad Umair (LEGI), Manuel Bernard (LEGI), Robin Barbera (LEGI) and Giovanni Ghigliotti (LPSC)

TP2 - Modeling spray-film interactions

Participants: Nicolas Gasnier (EM2C-SafranTech), Julien Leparoux (SafranTech), Mehdi Helal (CORIA-SafranTech) and Julien Carmona (CORIA)

TP3 - High-fidelity two-phase flow simulations of the purge of a fuel feed line

Participants: Thomas LAROCHE (Safran HE), Romain JANODET (Safran AE), Julien Leparoux (Safran Tech) and Melody Cailler (Safran Tech)

TP4 - Volume of Fluid solver in YALES2

Participants: Léa Voivenel (CORIA), Julien Carmona (CORIA), Mehdi Helal (CORIA), Pierre Portais (CORIA), Julien Leparoux (Safran Tech), Mélody Cailler (Safran Tech) and Nicolas Gasnier (EM2C / Safran Tech)

TP5 - Implement a local operator to distribute the solid volume of a particle over multiple cells

Participants: Théo Ndereyimana (Université de Sherbrooke), Stéphane Moreau (Université de Sherbrooke)

TP6 - Complex thermodynamics in sloshing tanks

Participants: C. Merlin (AGS), D. Fouquet (CORIA), V. Moureau (CORIA), J. Carmona (CORIA) and G. Lartigue (CORIA)

Combustion - Y. Bechane, CORIA & S. Dillon, SAFRAN & K. Bioche, CORIA

C1 - LES of the thermal degradation of a composite material

C2 - Flame stabilization by NRP plasma discharge

C3 - Extending and validating a generalized formalism of virtual chemistry

C4 - Turbulent combustion model for NOx prediction

C5 - Towards 3D simulation of detonation combustion

C6 - Flame stabilitity of flame-holders within reheat conditions

C7 - Thermal radiation in oxyflames

C8 - A first step toward hybrid CPU / GPU for reactive flow in YALES2

C9 - Soots numerical modeling

C10 - TECERACT : Tabulated chemistry generator for aeronautical combustion

C11 - Exploring efficient tabulation strategies for detailed chemistry

C12 - Dynamic sub-grid-scale modelling of multi-regime flame wrinkling

C13 - LES of a semi-industrial burner using a non-adiabatic virtual chemical scheme

User Experience & Data - L. Korzeczek, GDTECH