STAGE (internship) in Design of Source-to-Source Transformations for Optimizing Numerical Fluid Simulations

Contract type : Internship agreement

Level of qualifications required : Graduate degree or equivalent

Other valued qualifications : M2 student

Fonction : Internship Research

Context

Preamble

Ce sujet s'inscrit dans  le dispositif PhD tracks du centre Inria de l'Université de Lorraine et antenne de Strasbourg. Ce dispositif  vise à attirer et accompagner des  éléments  prometteurs et motivés, inscrits actuellement en Master 2, vers le doctorat en proposant un financement couplé de quatre ans  couvrant stage de Master2 + thèse. Le stage de Master 2, d'une durée de 5 à 6 mois, sera gratifié à 4.35 €/heure (plus ou moins 670 €/mois). Les candidats admis dans le dispositif présenteront en mai  2025 l’avancement de leurs travaux devant un jury qui validera l'entrée en thèse (l’arrêt du PhD track devrait être exceptionnel).

Ce dispositif, le mode de candidature et le calendrier sont décrits dans l'onglet PhD track du site https://www.inria.fr/fr/centre-inria-universite-lorraine

---
This subject is part of the PhD tracks programme run by the Inria centre at the University of Lorraine and the Strasbourg site. The aim of this programme is to attract and support promising and motivated students currently enrolled in a Master 2 course towards a PhD by offering four years of combined funding covering a Master 2 internship + thesis. The Master 2 internship, lasting 5 to 6 months, will be paid at €4.35 /hour (plus or minus €670 per month). Candidates admitted to the programme will present the progress of their work to a jury in May 2025, which will validate their entry into the PhD programme (the PhD track should be discontinued in exceptional cases).
The programme, how to apply and the timetable are described in the PhD track section of the https://www.inria.fr/fr/centre-inria-universite-lorraine website.
 


This stage/internship is a collaboration between the Inria teams of MACARON and CAMUS.
The CAMUS team is focusing on developing, adapting and extending automatic parallelizing and optimizing techniques, as well as proof and certification methods, for the efficient use of current and future multi-core processors. https://www.inria.fr/en/camus

The MACARON team works on the construction of numerical methods where the aim is to improve the efficiency of numerical models while preserving the physical properties of PDEs and the convergence of methods. The team’s main focus is on the approximation of kinetic and hyperbolic PDEs in different fluid-dynamical applications. https://www.inria.fr/en/macaron

Thus the purpose of this stage is to bring together the complementing expertice of both groups to develop and apply state of the art parallelisation and optimazing techniques to reduce computational overhead in fluid-dynamical simulations with huge degrees of freedom as arising in kinetic models thus advancing research in both diciplines.

Problem description
The efficiency of a numerical simulation of a physical process depends on three factors:
1. the chosen numerical method (expertice of MACARON)
2. the degree of optimization of the implementation (expertice of CAMUS)
3. the amount of computing resources available for the simulation

While the third factor ususally cannot be directly influenced by the programmer or developer the first two points can be optimized.

Efficient numerical methods for weakly compressible low Mach number flows, which form a high percentag of real world simulations, require special properties which traditional explicit upwind methods do not possess. They are usually bound by a severe time step (CFL) restriction and suffer from exorbitant numerical dissipation which are connected to fast acoustic waves and are thus ruled out as they create a hugh computational overhead due to vanishingly small time steps and spurious numerical results.
Therefore we propose to use the novel Lattice-Boltzmann method (LBM) developed at MACARON which is CFL less, entropy stable and low dissipative and has provided excellent numerical results for compressible flows. Thus it is a promising candidate for simulations in the low Mach number regime.

Once the numerical scheme is determined, a bottlenecks is the implementation of the numerical scheme which usually has to be manually turned into a high-performance code. This introduces new errors (bugs) in the code, focuses often on a specific architecture only, requires high maintanance efforts and is very time consuming.
Therefore we propose within this stage/internship to extend and adapt the existing approach of software optimization developed within the OptiTrust ANR project to the LBM simulations of multi-physics applications developed within MACARON.
The key point within the OptiTrust approach is to transform unoptimized code implementation into high-performance code by applying a sequence of source-to-source transformations which are controlled by the programmer. A crucial point is the guarantee that each transformation involved preserves the semantics of the code and simulation results remain unchanged. To that end, it leverages Separation Logic to compute resource and effect information, and relies on carefully designed criteria that provide sufficient conditions for semantic preservation.

Assignment

With the help of the advisors, the intern is expected to master the following assignments

  1. Implementation and adaptation of the LBM method applied to flow simulations in several Mach number regimes [1,2,3]
  2. Identification of the source-to-source transformations that can serve as basic blocks for optimizing flow simulations, in particular transformations needed to support the introduction of in-place parallel data movement.
  3. Design of the semantic criteria that guarantee that these basic transformations preserve the semantics of the code, by leveraging the separation logic information computed by OptiTrust.
  4. Devising a chain of transformations for producing a high-performance implementation of a recently devised scheme for flow simulation. The parallelization patterns involved appear to be particularly interesting.

Literature

All information regarding the OptiTrust project can be found under the following link https://chargueraud.org/softs/optitrust/ which also contains all associated publications and state-of-the-art developments.

Regarding the numerical scheme and the particularities of low Mach number flow simulations we refer to the following references (not exclusively)

[1] Bellotti, T., Helluy, P., & Navoret, L. (2024). Fourth-order entropy-stable lattice Boltzmann schemes for hyperbolic systems. arXiv preprint arXiv:2403.13406.

[2] Guillard, H., & Viozat, C. (1999). On the behaviour of upwind schemes in the low Mach number limit. Computers & fluids, 28(1), 63-86.

[3]  Lukáčová-Medvid’ová, M., Puppo, G., & Thomann, A. (2023). An all Mach number finite volume method for isentropic two-phase flow. Journal of Numerical Mathematics, 31(3), 175-204.

Main activities

 The main activities of the intern will be

  • Simulation of fluid flow in different Mach number regimes. This implies a naive implementation and benchmarking of the LBM method as well as verifying its perfomance and the quality of the numerical solution on study cases e.g. plasma simulations
  • Development of a high performance implementation of the naive code by using an efficient parallel data shift algorithm
  • Deriving step by step an optimized implementation using OptiTrust. Therefore non-trivial correctness criterias need to be devised and their applicability on the flow simulations has to be verified.

Skills

Technical skills and level required: Advanced knowledge in Theoretical and Applied Computer Science, background in fluid mechanics and scientific computing. In particular OCaml programming, and knowledge of programming language semantics.

Languages: English and French

 

Benefits package

  • Subsidized meals
  • Partial reimbursement of public transport costs
  • Leave: 7 weeks of annual leave + 10 extra days off due to RTT (statutory reduction in working hours) + possibility of exceptional leave (sick children, moving home, etc.)
  • Possibility of teleworking (after 6 months of employment) and flexible organization of working hours
  • Professional equipment available (videoconferencing, loan of computer equipment, etc.)
  • Social, cultural and sports events and activities
  • Access to vocational training
  • Social security coverage

Remuneration

Internship bonus: €4.35/hour (plus or minus €670/month)

Remuneration for thesis: €2100 gross/month the 1st year