Suivez

la liste

Contribution au développement de la bibliothèque de calcul GPU Kokkos au sein du projet « Moonshot » CExA

Le CEA recrute six ingénieurs « développement C++ » sur une durée de 2 ans pour contribuer au développement de la bibliothèque de calcul GPU Kokkos et mettre en place la stack de calcul GPU du CEA dans le cadre de son projet « Moonshot » CExA. Les postes seront localisés sur le site CEA de Saclay près de Paris.

Pour candidater, merci d’envoyer votre dossier (CV et lettre de motivation) à mathieu.lobet@cea.fr. Vous pouvez utiliser cette même adresse pour d’éventuelles questions concernant l’offre. Les candidatures seront évaluées à partir de mi-mai et jusqu’à ce que le poste soit pourvu.

Contexte

L’Europe se prépare à l’arrivée des premiers super-calculateurs exaflopiques, dont un en France, au CEA, dès 2025. Ces machines seront hétérogènes, accélérées par des GPUs de marques et d’architectures variées. Assurer performance et portabilité dans ces conditions constitue certainement l'un des plus grands challenges de l’Exascale. Pour l’adresser, le CEA investit largement dans un ambitieux projet « Moonshot » : CExA. Dans ce projet, nous allons mettre à disposition les bibliothèques pour exploiter pleinement cette puissance de calcul dans les applications scientifiques du CEA en contribuant, en étendant et en adaptant la bibliothèque open-source Kokkos. Nous représentons au sein de CExA des équipes expertes en calcul numérique issues des quatre composantes du CEA.

  • La maison de la simulation (https://www.mdls.fr) de la direction de la DRF est un laboratoire de recherche et d’ingénierie commun du CEA, du CNRS, de l’Univ. Paris-Saclay et de l’UVSQ spécialisé dans le calcul haute performance et la simulation numérique.
  • Le service de génie logiciel pour la simulation de la DES regroupe trois laboratoires qui adressent les problématiques d’environnement de simulation, d’IA et de sciences des données, de calcul intensif et d’analyse numérique.
  • Le DSCIN de la DRT/LIST est responsable de la recherche et du développement de circuits intégrés numériques et de processeurs pour l'IA, ainsi que de la conception d'architectures numériques complexes. Il travaille également sur des solutions pour les systèmes embarqués et développe des outils de conception pour l'IA embarquée, les systèmes embarqués et les circuits de confiance.
  • Le DSSI de la DAM pilote et mène des activités dans les domaines de l’informatique, des mathématiques appliquées et des systèmes d’information, couvrant un large spectre qui va de la définition et conception jusqu’aux services utilisateurs.

Mission

Au sein d’une nouvelle équipe agile en cours de mise en place pour mener à bien le projet CExA, vous travaillerez en collaboration avec l'écosystème européen autour du HPC et les équipes en charge du développement de Kokkos aux Etats-Unis (Sandia et Oakridge National labs) pour enrichir la bibliothèque afin de l'adapter aux besoins des applications développées par le CEA et aux technologies développées par l'Europe pour l'Exascale (EPI, SiPearl, RISC-V).
Votre mission inclura notamment :

  • Le développement agile en C++ de l'intergiciel CExA pour répondre aux axes d'améliorations suivants :
    • L’adéquation aux architectures à « mémoire distribuée »
    • Le support des architectures hétérogènes pour les supercalculateurs exaflopiques européens
    • L’interfaçage avec les bibliothèques externes et les outils de traitement de données
    • La simplification du déploiement
  • Le portage via Kokkos et l'intégration de nouvelles fonctionnalités dans les démonstrateurs applicatifs sélectionnés (hydrodynamique, énergie par fusion, médecine assistée par l’IA)
  • Le support et l'animation sur les modèles de programmation parallèles au sein du laboratoire et à l'échelle de collaborations européennes et mondiales.

Compétences

Vous possédez un master et/ou un diplôme d’ingénieur en informatique et :

  • Vous avez une bonne maîtrise du C++ avancé et des derniers standards.
  • Vous saurez vous insérer dans un processus de développement agile (SCRUM) et vous maîtrisez les outils de base associés au développement collaboratif (git, github, etc.).
  • Vous avez des compétences en génie logiciel. Vous maîtrisez les environnements de développement communs et les outils associés (cmake, docker, spack, gtest, ctest, etc.).
  • D’éventuelles connaissances en programmation parallèle (GPU, multi-thread, etc.) sont un plus notamment avec la bibliothèque Kokkos ou équivalent.
  • Vous êtes autonome et vous souhaitez vous intégrer à une équipe de travail internationale. Vous maîtrisez l’anglais technique (écrit et oral). Vous vous intéressez au monde du calcul haute performance et ses enjeux et suivez l’évolution des technologies.

Salaire et avantages

Le CEA propose des salaires compétitifs en fonction de vos diplômes et de votre expérience.
Ce poste présente plusieurs avantages :

  • la possibilité de s’intégrer dans des collaborations existantes avec d’autres laboratoires européens, aux États-Unis et au Japon,
  • de nombreuses opportunités de voyager à l’international (échanges, conférences, ateliers et plus encore),
  • jusqu’à 3 jours de télétravail par semaine,
  • le remboursement des abonnements aux transports publiques à hauteur de 75% et un réseau de transport gratuit dans toute l’île-de-France,
  • une complémentaire intéressante et plusieurs plans d’épargne entreprise,
  • 5 semaines de congés payés et 4 semaines de RTT par an.