Entreprise :
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.
Contexte :
L’équipe de développement systèmes embarqués de Kalray développe ses propres solutions applicatives autour du processeur de Kalray : le MPPA. Ces solutions font intervenir « Computer Vision », « Neural Network » et « Signal Processing ». Ces solutions applicatives tirent leur performance d’implémentation de bibliothèques de calculs (Computer Vision, Algèbre Linéaire, CNN, …) optimisées sur l’architecture du MPPA. Le but de ce stage est de développer et d’optimisation une ou plusieurs de ces bibliothèques.
Étapes / Objectifs :
- Apprendre le développement applicatif haute-performance en évaluant la performance des solutions actuelles (benchmark internes ou standards)
- Développer des implémentations optimisées améliorant les performances (latences, débits, prédictibilités) des bibliothèques applicatives
- Valider les solutions développer et les intégrer dans des applications de plus haut niveau
Compétences requises :
- À l’aise en développement logiciel (C, Python) et programmation parallèle (pthread, OpenMP, OpenCL)
- Connaissance d’un langage assembleur serait un plus
- Connaissance sommaire en compilation et optimisation serait un plus
- Connaissance de l’environnement Linux (Ligne de Commande) et Git (gestion de version)
- Autonome et volontaire
Compétences acquises à l’issue de la mission :
- Développement logiciel applicatif haute performance pour système embarqué
- Programmation d’un système parallèle complexe
- Évaluer rigoureusement la performance d’une bibliothèque
- Proposer et implémenter des optimisations pertinentes, en mesurer les effets
Durée souhaitée : 3 à 6 mois
Localisation : Montbonnot, France
Compensation : stage rémunéré
Date de démarrage souhaitée : à partir de janvier 2019
Read about Kalray’s privacy policy and personal data protection here.