Description du poste
Domaine
Mathématiques, information scientifique, logiciel
Contrat
Stage
Intitulé de l'offre
Stage - Bac+5 - Génération de boucles basées sur les cartes combinatoires - H/F
Sujet de stage
Modane est un langage dédié (DSL) développé au CEA qui propose entre autres une abstraction de haut niveau des modèles de programmation parallèle en fournissant à l'utilisateur une syntaxe se rapprochant du langage mathématique. Ce langage permet d'écrire des boucles de calcul et de génèrer à partir de ces boucles un code parallèle adapté à une exécution sur supercalculateur au travers du Framework Arcane (https://arcaneframework.github.io/arcane/userdoc/html/index.html). Une telle approche générative présente un réel avantage pour évaluer l'intérêt de différentes approches de programmation sur un ensemble d'applications.
L'objectif de ce stage est de mettre en place une cible de génération fournissant un modèle d'itération sur les éléments du maillage (i.e. la discrétisation de l'espace au sein de la simulation) basé sur les cartes combinatoires.
Durée du contrat (en mois)
6 mois
Description de l'offre
Au cours de ce stage, le(la) candidat(e) mettra au point une cible de génération utilisant les cartes combinatoires (via la bibliothèque CGAL, https://github.com/cgal/cgal) comme mécanisme d'itération sur le maillage et en évaluera l'apport en tant qu'alternative aux solutions actuellement supportées par Modane, à la fois en termes d'expressivité, de temps de calcul et de consommation mémoire.
Dans un premier temps, le(la) candidat(e) développera un prototype directement en C++ afin d'expérimenter sur l'utilisation de la librairie de cartes combinatoires. Ce prototype reproduira différents schémas d'itération sur les maillages représentatifs des besoins des codes de simulation. Dans un second temps, le(la) candidat(e) implémentera la génération de code C++ dans Modane (en Typescript) qui permettra de reproduire les schémas d'itération générés par les solutions actuelles. L'ajout de cette cible de génération permettra ensuite d'analyser le comportement des différentes variantes de schéma d'itération pour évaluer les points faibles et les points forts de ces variantes sur différents codes de simulation.
Conformément aux engagements pris par le CEA en faveur de l'intégration des personnes handicapées, cet emploi est ouvert à toutes et à tous. Le CEA propose des aménagements et/ou des possibilités d'organisation pour l'inclusion des travailleurs handicapés.
Participant à la protection nationale, une enquête administrative est réalisée pour tous les collaborateurs du CEA afin d'assurer l'intégrité et la sécurité de la nation.
Profil du candidat
Bac+5
Localisation du poste
Site
DAM Île-de-France
Localisation du poste
France, Ile-de-France, Essonne (91)
Ville
Bruyères-le-Châtel
Domaine
Mathématiques, information scientifique, logiciel
Contrat
Stage
Intitulé de l'offre
Stage - Bac+5 - Génération de boucles basées sur les cartes combinatoires - H/F
Sujet de stage
Modane est un langage dédié (DSL) développé au CEA qui propose entre autres une abstraction de haut niveau des modèles de programmation parallèle en fournissant à l'utilisateur une syntaxe se rapprochant du langage mathématique. Ce langage permet d'écrire des boucles de calcul et de génèrer à partir de ces boucles un code parallèle adapté à une exécution sur supercalculateur au travers du Framework Arcane (https://arcaneframework.github.io/arcane/userdoc/html/index.html). Une telle approche générative présente un réel avantage pour évaluer l'intérêt de différentes approches de programmation sur un ensemble d'applications.
L'objectif de ce stage est de mettre en place une cible de génération fournissant un modèle d'itération sur les éléments du maillage (i.e. la discrétisation de l'espace au sein de la simulation) basé sur les cartes combinatoires.
Durée du contrat (en mois)
6 mois
Description de l'offre
Au cours de ce stage, le(la) candidat(e) mettra au point une cible de génération utilisant les cartes combinatoires (via la bibliothèque CGAL, https://github.com/cgal/cgal) comme mécanisme d'itération sur le maillage et en évaluera l'apport en tant qu'alternative aux solutions actuellement supportées par Modane, à la fois en termes d'expressivité, de temps de calcul et de consommation mémoire.
Dans un premier temps, le(la) candidat(e) développera un prototype directement en C++ afin d'expérimenter sur l'utilisation de la librairie de cartes combinatoires. Ce prototype reproduira différents schémas d'itération sur les maillages représentatifs des besoins des codes de simulation. Dans un second temps, le(la) candidat(e) implémentera la génération de code C++ dans Modane (en Typescript) qui permettra de reproduire les schémas d'itération générés par les solutions actuelles. L'ajout de cette cible de génération permettra ensuite d'analyser le comportement des différentes variantes de schéma d'itération pour évaluer les points faibles et les points forts de ces variantes sur différents codes de simulation.
Conformément aux engagements pris par le CEA en faveur de l'intégration des personnes handicapées, cet emploi est ouvert à toutes et à tous. Le CEA propose des aménagements et/ou des possibilités d'organisation pour l'inclusion des travailleurs handicapés.
Participant à la protection nationale, une enquête administrative est réalisée pour tous les collaborateurs du CEA afin d'assurer l'intégrité et la sécurité de la nation.
Profil du candidat
Bac+5
Localisation du poste
Site
DAM Île-de-France
Localisation du poste
France, Ile-de-France, Essonne (91)
Ville
Bruyères-le-Châtel











