CTO-2020-S-16 – Offre de stage : Portage et optimisation d’une librairie mathématique vectorielle

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

Les processeurs manycore de Kalray sont animés par des cœurs d’architecture VLIW (Very Long Instruction Word), capables de faire tourner Linux et disposant de compilateurs C/C++ basés sur LLVM et GCC. Ces compilateurs sont capables de vectoriser automatiquement les boucles, mais demandent qu’il existe des variantes vectorielles des fonctions de la librairie standard libm. Pour illuster, cela permet d’évaluer simultanément quatre appels à cosf() si l’entrée et la sortie sont des vecteurs de quatre nombres flottants 32-bit déclarés selon l’extension __attribute((vector_size())) de GCC.

MISSIONS ET OBJECTIFS DU STAGE

La société ARM contribue à une librairie ‘open-source’ mathématique vectorielle appelée SLEEF (//sleef.org/). Le premier objectif du stage est de porter cette librairie dans l’environnement des processeurs Kalray. Le second objectif sera d’accélérer l’évaluation polynomiale au cœur de cette librairie, actuellement réalisée avec la méthode d’Estrin, mais d’autres méthodes sont à essayer.

CANDIDAT

Etudiant(e) en M1/M2 d’école d’ingénieur ou équivalent, vous disposez des compétences suivantes :

  • C/C++ sous Linux
  • Connaissances en Git et CMake
  • Intérêt pour les techniques et science de l’implantation des fonctions mathématiques en arithmétique flottante
  • Curieux, autonome, rigoureux


Date de démarrage : 1er semestre 2021

Durée du stage : 3 à 6 mois

Localisation : Kalray, 180 avenue de l’Europe, 38330 Montbonnot-Saint-Martin (ligne bus C1 – Arrêt Baudonnière)

Stage rémunéré

    Your Name (required)

    Your Email (required)

    Job reference number (required)

    Your CV (required - 1MB max.)

    Your cover letter (required - 1MB max.)

         By completing and sending this form, you consent to your data being collected by authorized Kalray personnel to process your request. For more information, please consult our privacy policy on personal data protection.

    This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.

    Read about Kalray’s privacy policy and personal data protection here.