Développeur logiciel pour compilateurs LLVM et GCC H/F

Détail de l'offre

Informations générales

Entité de rattachement

Le Commissariat à l'énergie atomique et aux énergies alternatives (CEA) est un organisme public de recherche.

Acteur majeur de la recherche, du développement et de l'innovation, le CEA intervient dans le cadre de ses quatre missions :
. la défense et la sécurité
. l'énergie nucléaire (fission et fusion)
. la recherche technologique pour l'industrie
. la recherche fondamentale (sciences de la matière et sciences de la vie).

Avec ses 16000 salariés -techniciens, ingénieurs, chercheurs, et personnel en soutien à la recherche- le CEA participe à de nombreux projets de collaboration aux côtés de ses partenaires académiques et industriels.  

Référence

2022-21141  

Description de la Direction

CEA Tech est un leader mondial de la recherche technologique. Les équipes d'ingénieurs chercheurs sont mobilisées pour bâtir et transférer à des partenaires industriels des portefeuilles de technologies répondant aux besoins des filières technologiques dans les domaines de l'information, de la communication, de l'énergie et de la santé.

Description de l'unité

Intégré au LIST, le Département des Systèmes et Circuits Intégrés Numériques (DSCIN), a pour mission de créer des technologies :
- De systèmes numériques de calcul intégrés ou embarqués
- De composants intégrés et systèmes d'objets intelligents et communicants sans fil
et de proposer une offre assurant le lien entre technologie et applications, basée sur les plateformes de Conception et Systèmes embarqués, en particulier sur les domaines de l'Internet des Objets, des véhicules autonomes, de l'intelligence artificielle et du calcul à haute performance (HPC).

Au sein de ce département, le Laboratoire Systèmes-sur-puce et Technologies Avancées (LSTA) a pour mission d'étudier, concevoir et implémenter des architectures multi-cœurs et des accélérateurs haute performance. Il exploite pour cela les dernières technologies avancées disponibles : CMOS jusqu'au nœud 7nm, intégration 2.5D/3D, mémoires non-volatiles. Les domaines applicatifs sont ceux du calcul haute performance (HPC – High Performance Computing), de l'intelligence artificielle (IA) et du quantique (contrôle numérique de circuits quantiques CMOS).

Description du poste

Domaine

Sciences pour l'ingénieur

Contrat

CDI

Intitulé de l'offre

Développeur logiciel pour compilateurs LLVM et GCC H/F

Statut du poste

Cadre

Description de l'offre

Pour répondre aux besoins croissants du calcul numérique de haute performances, le laboratoire est engagé dans le développement d’une pile matérielle et logicielle pour les calculs avec des nombres en virgule flottante à précision variable et étendue (VXP pour Variable and eXtended Precision).

La partie matérielle est composée d’un processeurs hôte RISC-V équipé d’un accélérateur VXP. La partie logicielle est composée d’une extension aux langages C et C++ permettant de programmer avec une précision variable, précision qui peut être variable dynamiquement à l’exécution. Les applications ciblées sont les noyaux d’algèbre linéaire, calcul typique du HPC (High Performance Computing).

Sur la base d’un premier prototype issu d’un travail de thèse, vous aurez à  effectuer les développements suivants :

  • Support des extensions RISC-V pour la VXP dans l’assembleur et le débogueur.
  • Support des extensions C et C++ pour la programmation en précision variable dans la chaîne de compilation LLVM. L’objectif étant de maximiser le pouvoir d’expression des extensions au langage tout en conservant les bénéfices des multiples passes d’optimisations déjà présentes dans LLVM, voire en développant des passes spécifiques à la VXP.

Ces travaux se feront en étroite collaboration avec, d’une part l’équipe de développement matériel de l’accélérateur et de son hôte RISC-V, et d’autre part celle qui assure le portage d’applications et de noyaux de calcul HPC sur cette nouvelle architecture.

Vous rejoindrez l’équipe projet d’ingénieurs-chercheurs du CEA et pourrait être en relation avec des partenaires industriels ou académiques, en France ou en Europe. Des déplacements et des missions ponctuelles peuvent être nécessaire pour des salons ou des visites chez nos partenaires.

 

#CEA-List CDI CDD

Profil du candidat

Ingénieur en informatique avec cinq ans d’expérience vous avez un  goût certain pour les outils et techniques de compilation.

Une première expérience avec les souches de compilation GCC et LLVM serait un plus.

Vous avez une maîtrise des processus de développement logiciel et d’intégration continue, ainsi que de leurs outils associés : forges (Gitlab ou Github), Docker, Jenkins, etc.

Un esprit curieux, avide de techniques avancées et capable d’appréhender et de résoudre des problèmes complexes en autonomie est souhaitable.

La capacité à travailler en équipe est nécessaire, tout en sachant faire preuve d’une bonne autonomie dans les tâches au quotidien.

Une capacité de recul et une vision transverse sont également nécessaires à la bonne compréhension et à la prise en compte des contraintes aussi bien matérielles que logicielles.

Localisation du poste

Site

Grenoble

Localisation du poste

France

Ville

  Grenoble

Critères candidat

Langues

Anglais (Courant)

Formation recommandée

Ingénieur en informatique

Demandeur

Disponibilité du poste

01/07/2022