Mission :
Le CNRS recrute au laboratoire Lagrange un-e ingénieur-e en calcul scientifique haute performance. Le calcul scientifique, en particulier intensif, parallèle et l'analyse de données est depuis de nombreuses années au cœur des axes scientifiques du laboratoire Lagrange. Le monde du calcul scientifique est actuellement soumis à des changements importants avec l'arrivée de solutions d'accélérations. Les architecture multi cœurs et plus récemment les GPU sont désormais incontournables sur les machines dédiées au calcul numérique (par exemple, dans le contexte national, la machine du CINES « AdAstra » équipée avec 338 nœuds GPU AMD). De plus en plus, le calcul numérique doit relever le défi posé par le foisonnement des architectures matérielles (GPU NVIDIA et AMD, multi-core, fpga...) et logicielles (MPI, OpenMP, OpenACC, CUDA, ...).
Si la richesse de ce nouvel environnement offres une pléthore d'opportunité, elle s'accompagne également de son lot de difficultés. En particulier, il devient désormais virtuellement impossible pour les développeurs, d'adapter leurs codes à l'ensemble de architectures des machines de calcul mises à leur disposition à coût souvent important et encore moins de pérenniser ces adaptations.
Dans ce contexte, plusieurs meta-librairies (e.g. KOKKOS) sont apparues pour permettre aux développeurs de se concentrer sur des tâches à forte valeur ajoutées et construire des logiciels efficaces, réutilisable et pérennes.
Dans ce contexte, l'ingénieur (H/F) en calcul scientifique haute performance participera aux travaux de portage de code sur GPU. Il/elle travaillera dans le contexte de plusieurs équipes ayant de codes opérationnels sur machine parallèle mais qui nécessitent d'une adaptation aux architectures modernes. Il/elle devra concevoir et développer le portage GPU des codes existants et qui tournent actuellement sur des machines parallèles en CPU (centre nationaux tel que CINES, Idris, TGCC). Il/elle aidera aussi les équipes du laboratoire dans la démarche de portage et de validation du code.
Activités :
. Prise en main de codes existants et de leur fonctionnement sur CPU
. Discussion avec les chercheurs et/ou ingénieurs afin de décider la stratégie de portage sur GPU
. Définition des étapes à suivre et de tests à réaliser et à valider
. Mise en place de script de compilation et de test
. Portage des codes sur GPU
. Participation à des réunions avec de chercheurs pour un bonne suivi des avancements
. Écriture de documentation relative au portage du code sur GPU
En cliquant sur "JE DÉPOSE MON CV", vous acceptez nos CGU et déclarez avoir pris connaissance de la politique de protection des données du site jobijoba.com.