Mapping & Scheduling de Transformers sur un Accélérateur Neuronal programmable H/F
Stage Palaiseau (Essonne) Développement informatique
Description de l'offre
Détail de l'offre
Informations générales
Entité de rattachement
Le CEA est un acteur majeur de la recherche, au service des citoyens, de l'économie et de l'Etat.Il apporte des solutions concrètes à leurs besoins dans quatre domaines principaux : transition énergétique, transition numérique, technologies pour la médecine du futur, défense et sécurité sur un socle de recherche fondamentale. Le CEA s'engage depuis plus de 75 ans au service de la souveraineté scientifique, technologique et industrielle de la France et de l'Europe pour un présent et un avenir mieux maîtrisés et plus sûrs.
Implanté au cœur des territoires équipés de très grandes infrastructures de recherche, le CEA dispose d'un large éventail de partenaires académiques et industriels en France, en Europe et à l'international.
Les 20 000 collaboratrices et collaborateurs du CEA partagent trois valeurs fondamentales :
• La conscience des responsabilités
• La coopération
• La curiosité
Référence
2024-33911Description de l'unité
Le Commissariat à l'Energie Atomique et aux Energies Alternatives (CEA) est un acteur majeur en matière de recherche, de développement et d'innovation. Cet organisme de recherche technologique intervient dans trois grands domaines : l'énergie, les technologies pour l'information et la santé, et la défense. Reconnu comme un expert dans ses domaines de compétences, le CEA est pleinement inséré dans l'espace européen de la recherche et exerce une présence croissante au niveau international. Situé en île de France sud (Saclay), le Laboratoire d'Intégration des Systèmes et des Technologies (LIST) a notamment pour mission de contribuer au transfert de technologies et de favoriser l'innovation dans le domaine des systèmes de calcul parallèle. Ce stage se déroulera au sein du Laboratoire Environnement de Conception et Architectures (LECA) sur le site de Nano-Innov du CEA LIST.
Description du poste
Domaine
Composants et équipements électroniques
Contrat
Stage
Intitulé de l'offre
Mapping & Scheduling de Transformers sur un Accélérateur Neuronal programmable H/F
Sujet de stage
Dans le domaine passionnant de la conception d'architecture matérielle et de l'optimisation des solutions de calcul pour l'intelligence artificielle (IA), le Laboratoire (LECA) a conçu des circuits silicium intégrés remarquables, dont un processeur parallèle baptisé PNeuro[1], conçu spécifiquement pour accélérer les algorithmes d'IA. Cette architecture a décroché le prestigieux prix Embedded World pour son incroyable efficacité énergétique [2]. En effet, elle permet d'exécuter des réseaux de neurones profonds de manière efficace, tout en consommant très peu d'énergie, sur des plates-formes embarquées. Pour tirer le meilleur parti de cette architecture, il est essentiel d'optimiser l'exécution des réseaux sur le PNeuro, une tâche qui présente de nombreux défis passionnants.
Durée du contrat (en mois)
6
Description de l'offre
Dans ce cadre, l’objectif de ce stage est d’implémenter une application type Transformers sur l’architecture PNeuro. Un des enjeux importants de cette partie est l’allocation des calculs aux processeurs élémentaires de sorte à atteindre les meilleures performances de calcul (OPC : opérations par cycle), tout en minimisant les transferts de données en mémoire.
Dans un premier temps, le candidat devra faire l’étude des couches d’un réseau Vision Transformer (ViT), comprendre l’exécution des calculs et opérations associés. Une attention particulière devra être donnée sur la dépendance des données d’entrée et sortie. De premières pistes devront être identifier pour la parallélisassions les calculs.
Dans un second temps, le candidat devra étudier l’architecture PNeuro : son jeu d’instruction, ses capacités mémoires et ses fonctionnalités avancées de transfert de donnée. Quelques éléments clés sur ce point : Cet accélérateur programmable est de type SIMD (Single Instruction Multiple Data). Un contrôleur global intègre le pipeline processeur Fetch/Decode/Execute et permet de piloter les signaux de contrôle et routage dans l’ensemble de l’architecture.
Enfin, le candidat devra implémenter les couches principales qui composent une application ViT sur PNeuro. Cette implémentation consiste dans le code assembleur (jeu d’instruction spécifique) et le code C du co-processeur dont le rôle est de charger les paramètres et de déclencher l’exécution du microcode PNeuro.
Pièces à fournir : CV + lettre de motivation + classements
Références :
[1]- A. CARBON, J-M PHILIPPE, O. BICHLER, R. SCHMIT, B. TAIN, D. BRIAND N. VENTROUX, M. PAINDAVOINE, O. BROUSSE
PNeuro: A scalable energy-efficient programmable hardware accelerator for neural networks
[2]- B. TAIN, R. MILLET
Embedded World Prize for PNeuro IP 2022
Moyens / Méthodes / Logiciels
Programmation C, ASSEMBLEUR. Architecture processeur/calcul. Application AI/DNN
Profil recherché
Profil du candidat
Le candidat recherché est en dernière année de master recherche ou diplôme ingénieur (bac+5). Des connaissances solides en algorithmique, langages C et assembleur sont requises. Des connaissances en architectures de calcul, traitement de l’image seront aussi appréciées. Exigeant et investi, vous avez à cœur de proposer des solutions innovantes et de travailler dans un milieu à la pointe de la technologie qui vous permettra de répondre aux enjeux de demain. Le candidat devra être doté d’un bon relationnel et posséder la capacité de travailler en équipe et en autonomie.
Conformément aux engagements pris par le CEA en faveur de l’intégration de personnes en situation de handicap, cet emploi est ouvert à tous et toutes.