← Retour aux offres

Prototypage d’un Accélérateur MPPA pour X86

Postée le 08 juil.

Lieu : Montbonnot ou Sophia Antipolis · Contrat : Stage · Rémunération : Stage rémunéré €

Société : Kalray

Kalray (Euronext Growth Paris — FR0010722819 — ALKAL) est le pionnier des processeurs pour les nouveaux systèmes intelligents. Véritable rupture technologique, les processeurs « intelligents » ont la capacité d'analyser à la volée, et de manière intelligente, une très grande quantité d'informations, de prendre des décisions et d'interagir en temps réel avec le monde extérieur. Ces processeurs intelligents seront largement déployés dans des secteurs en forte croissance tels que les réseaux de nouvelle génération (data centers intelligents) et les véhicules autonomes, ainsi que les équipements de santé, les drones et les robots. L'offre Kalray comprend aussi bien des processeurs que des solutions complètes (cartes électroniques et logiciels). Créé en 2008 en tant que spin-off du CEA (Commissariat à l'énergie atomique et aux énergies alternatives), Kalray sert des clients tels que des fabricants de serveurs, des intégrateurs de systèmes intelligents et des fabricants de produits grand public incluant les constructeurs automobiles.

Description du poste

Contexte / Description du Projet :
L'objectif premier du stage, est de définir et d'implémenter les API de l'accélérateur MPPA sur cible x86.

Ces API, permettent à l'utilisateur du MPPA d'écrire et de déporter des 'compute kernels' sur l'accélerateur Kalray MPPA depuis un host Linux (x86).
Afin d'accélérer et de simplifier les étapes du portage d'une application, l'utilisateur doit pouvoir exécuter sur cible x86 un code C similaire à celui déporté sur cible MPPA.
Pour ce faire, vous développerez /adapterez les API de l'accélérateur sur cible x86 et vous fournirez les points d'interface entre ce modèle et le processus x86 de l'application hôte.
Vous aurez également l'occasion de monter en compétence avec notre technologie de processeur manycore.
Étapes/Objectifs :
1. Implémenter un « backend PoCL » spécifique, permettant de déployer des ‘computes kernels’ sur d'autres threads POSIX
2. Implémenter les API Kalray spécifiques/standard sur cible x86 : mppa_async, mppa_rsrc, rpmsg, virtio
3. Valider l'ensemble en mettant en intégration continue les tests existants sur ce modèle
4. Evaluer/tester l'outillage d'aide au debug : valgrind, gdb, etc...

Profil recherché

Compétences requises :
- A l’aise en développement de logiciel C/C++, POSIX
- Connaissance de systèmes de build/packaging/validation (Makefile, cmake/ctest…)
- La connaissance de l’environnement Linux (Ligne de Commande) et Git (gestion de version) serait un plus
- Autonome et volontaire
Compétences acquises à l'issue de la mission :
- Architecture de processeur « manycore »
- Développement Logiciel pour système embarqués

Voir le fichier joint

Pour postuler :

email à gmorin@kalray.eu