Lieu : Kalray, 180 avenue de l’Europe, 38330 Montbonnot-Saint-Martin (ligne bus C1 – Arrêt Baudonnière) · Contrat : Stage · Rémunération : A négocier
Kalray est une entreprise leader du développement des processeurs « massivement parallèles ».
Le MPPA® est un processeur « manycore » dont l’architecture révolutionnaire présente plusieurs centaines de cœurs fonctionnant en parallèle et délivrant à fois haute performance, faible consommation et faible latence. Cette architecture est particulièrement efficace pour l’accélération des « Data Centers » ainsi que pour les applications embarquées critiques du futur, par exemple celles des voitures autonomes.
Nos clients et partenaires à travers le monde sont les leaders de leur industrie.
Kalray développe également des cartes électroniques basées sur le MPPA® ainsi qu’un Kit de développement logiciel (SDK) et les outils logiciels permettant à nos clients de développer leurs propres applications.
Kalray, c’est un environnement de start-up, avec une communauté unie et un fort esprit d’entre-aide.
CONTEXTE DU STAGE
L’architecture KVX étant unique, Kalray développe ses propres backends dans des compilateurs de références tels que GCC et LLVM. De ces développements, dépendent fortement les performances finales des codes qui seront exécutés sur le MPPA®. Ce stage s’inscrit dans ce contexte d’amélioration continue et de la pérennité des performances brutes des codes compilés pour MPPA®.
–
MISSIONS ET OBJECTIFS DU STAGE
L’objectif de ce stage est le développement d’un outil de génération automatique de la description machine du processeur KVX dans le compilateur LLVM (les fichiers .td) ainsi que d’un outil de mise à jour et de contrôle de ces fichiers de description à mettre en place dans le processus d’intégration continue. Cet outil devra être capable de générer la description machine dans deux états différents :
Une première version condensée (un prototype déjà existant devra être utilisé comme référence), dont la principale utilité sera de mettre en place et de tester l’outil de contrôle destiné à l’intégration (assurer la non-régression de la description par rapport à la description du hardware)
Une seconde version complète comprenant les informations requises pour assembler le code
Optionnel (si le temps le permet) : implémenter l’assembleur LLVM à partir de cette dernière description
Etudiant(e) en dernière année d’école d’ingénieur ou équivalent, vous disposez des compétences suivantes :
Python (bon niveau)
Git
Anglais technique
Curieux, autonome, rigoureux
Envoyer CV et Lettre de motivation à : jobs@kalray.eu
Ou postuler directement sur notre site internet :
https://www.kalrayinc.com/csw-2020-s-14-offre-de-stage-generation-automatique-de-la-description-machine-de-larchitecture-kvx-pour-le-compilateur-llvm/