Alternance - Informatique scientifique : Calcul Haute performance pour les logiciels de simulation H/F
IFPEN est un acteur majeur dans le développement de solutions NTE autour du stockage géologique (CO2, hydrogène, ...) ou de la géothermie.
Dans ce contexte IFPEN développe des logiciels de simulation d'écoulement de fluides (eau, gaz, ...) dans des structures géologiques souterraines.
Ces logiciels sont construits autour de la plateforme de simulation Open Source Arcane codéveloppée avec le CEA DAM (https://github.com/arcaneframework/framework). Ils permettent de déterminer la capacité de stockage des structures géologiques, la répartition des fluides stockés ainsi que la pérennité du stockage sur de longues périodes de temps (plusieurs milliers d'années).
Les temps de simulation étant très importants avec des domaines physiques de très grande taille il est nécessaire d'utiliser des supercalculateurs pour mener à bien ces simulations dans des temps raisonnables.
Le travail proposé est de mener des benchmarks et un profiling de ces logiciels de simulation sur des supercalculateurs en utilisant plusieurs centaines à plusieurs milliers de CPU ou GPU.
En tant qu’alternant.e, vous serez amené.e à :
- Mettre en œuvre les environnements de développement des logiciels de simulation IFPEN (Geoxim et Sharc https://github.com/arcaneframework/sharc) pour produire des versions adaptées à des supercalculateurs
- Préparer et réaliser les plans de tests de ces logiciels en analysant l'impact sur les temps de simulation des différents réglages des simulateurs mais aussi des machines utilisées
- Réaliser des analyses de performances plus complètes avec des outils de profiling en particulier pour les simulations utilisant du GPU
En fonction de l'avancée de vos travaux vous pourrez être amené(e) à réaliser des évolutions permettant une amélioration des performances des logiciels.
Développement informatique avec C/C++, environnement de développement HPC (High Performance Computing) sous Linux, algèbre linéaire numérique (méthodes de Krylov).
M2 ou troisième année d'école d'ingénieur
Avoir déjà réalisé un projet ou un stage dans les domaines de compétences recherchées.