Où docteurs et entreprises se rencontrent
Menu
Connexion

Génération de code Just-in-time pour la génération de noyaux de calculs complexes en mécanique du solide // Just-in-time code generation to generate complex computing kernels in solid mechanics

ABG-129505
ADUM-63400
Sujet de Thèse
14/03/2025
Mines Paris-PSL
EVRY - France
Génération de code Just-in-time pour la génération de noyaux de calculs complexes en mécanique du solide // Just-in-time code generation to generate complex computing kernels in solid mechanics
  • Electronique
Generation de code, portage GPU, mécanique numérique, calcul scientifique, optimisation de code, differentiation automatique
Code generation, computational mechanics,, scientific computing, code optimization,, automatic differentiation

Description du sujet

Les lois de comportement décrivent toute la connaissance physique des matériaux considérés. La complexité de ces lois augmentent à mesure que ces connaissances évoluent. L'étape d'intégration de la loi de comportement est une étape clé pour les performances et la robustesse des calculs scientifiques.

De nombreuses plateformes numériques (FEniCS, FireDrake, FreeFEM, Comsol) proposent des techniques de génération de code à la volée (JIT, pour Just In Time) pour gérer plusieurs physiques dans une approche monolithique. Cette technique réduit considérablement les temps de mise à oeuvre de nouvelles simulations (et offre de ce fait une grande versatilité à l'utilisateur) mais permet également une optimisation spécifique au cas traité ou un portage transparent sur diverses architectures (CPU ou GPU).

Notre expérience du développement du projet MFEM-MGIS [9] a montré qu'une génération de code permet d'optimiser 10 à 15% les performances des d'assemblages des forces internes et des forces extérieures. Par ailleurs, notre expérience du portage des lois de comportement sur GPUs montre que les noyaux générés doivent être hautement spécialisés pour optimiser les transferts mémoire et les accès aux données, ce qui est en pratique incompatible avec la flexibilité requise par la diversité de situations traitées par un code généraliste. A titre d'exemple, le fait de savoir si une variable comme la température est constante et uniforme est une information précieuse pour l'optimisation du noyau d'une loi de comportement mécanique simple. Or, cette information n'est généralement connue qu'au moment de lancer la simulation et il est inenvisageable de pré-compiler tous les cas possibles. Les codes se reposent donc sur des traitements non optimaux.

Un dernier avantage de la génération de code est de permettre une meilleure évolutivité du code en masquant les détails d'implémentation: ces derniers peuvent éventuellement être remaniés en profondeur sans impact pour l'utilisateur. FEniCS, FireDrake et Dune se reposent sur le language Unified Form Language (UFL) permettant de décrire équations d'équilibre, conditions aux limites, post-traitements sous forme variationnelle [1]. La bibliothèque scikit-fem fournit des fonctionnalités similaires [2, 3]. La DAM a également développé un “domain specific language” nommé ∇ pour simplifier l'écriture d'applications HPC [10]. Cependant, ces solutions sont généralement limitées aux étapes d'assemblage des forces intérieures et des matrices de raideurs et n'incluent pas l'étape d'intégration de la loi de comportement. Elles sont par ailleurs généralement limitées aux éléments finis standard et ne considèrent généralement pas les méthodes de type Hybrid Discontinuous Galerkin (HDG) [4]
------------------------------------------------------------------------------------------------------------------------------------------------------------------------
------------------------------------------------------------------------------------------------------------------------------------------------------------------------

/
------------------------------------------------------------------------------------------------------------------------------------------------------------------------
------------------------------------------------------------------------------------------------------------------------------------------------------------------------

Début de la thèse : 01/10/2025
WEB : https://www.mat.minesparis.psl.eu/formation/doctorat/propositions-de-sujets-de-these/

Nature du financement

Précisions sur le financement

Partenariat d'entreprises ou d'associations

Présentation établissement et labo d'accueil

Mines Paris-PSL

Etablissement délivrant le doctorat

Mines Paris-PSL

Ecole doctorale

621 ISMME - Ingénierie des Systèmes, Matériaux, Mécanique, Énergétique

Profil du candidat

Profil type pour une thèse à MINES ParisTech: Ingénieur et/ou Master recherche - Bon niveau de culture générale et scientifique. Bon niveau de pratique du français et de l'anglais (niveau B2 ou équivalent minimum). Bonnes capacités d'analyse, de synthèse, d'innovation et de communication. Qualités d'adaptabilité et de créativité. Capacités pédagogiques. Motivation pour l'activité de recherche. Projet professionnel cohérent. Pré-requis (compétences spécifiques pour cette thèse): M2 en sciences de l'informatique, physique, mécanique numérique, bioinformatique avec une forte composante sur la génération de code de calcul scientifique efficace. Pour postuler: Envoyer votre dossier à recrutement_these@mat.mines-paristech.fr comportant : un curriculum vitae détaillé une copie de la carte d'identité ou passeport une lettre de motivation/projet personnel des relevés de notes L3, M1, M2 2 lettres de recommandation les noms et les coordonnées d'au moins deux personnes pouvant être contactées pour recommandation une attestation de niveau d'anglais
Typical profile for a thesis at MINES ParisTech: Engineer and / or Master of Science - Good level of general and scientific culture. Good level of knowledge of French (B2 level in french is required) and English. (B2 level in english is required) Good analytical, synthesis, innovation and communication skills. Qualities of adaptability and creativity. Teaching skills. Motivation for research activity. Coherent professional project. Prerequisite (specific skills for this thesis): Applicants should supply the following : • a detailed resume • a copy of the identity card or passport • a covering letter explaining the applicant's motivation for the position • detailed exam results • two references : the name and contact details of at least two people who could be contacted • to provide an appreciation of the candidate • Your notes of M1, M2 • level of English equivalent TOEIC to be sent to recrutement_these@mat.mines-paristech.fr
31/07/2025
Partager via
Postuler
Fermer

Vous avez déjà un compte ?

Nouvel utilisateur ?