Qui sommes-nous ?
Espace utilisateur
Formation continue
Credit : L. Godart/CEA
D’un jour à plusieurs semaines, nos formations permettent une montée en compétence dans votre emploi ou accompagnent vers le retour à l’emploi. 
Conseil et accompagnement
Crédit : vgajic
Fort de plus de 60 ans d’expériences, l’INSTN accompagne les entreprises et organismes à différents stades de leurs projets de développement du capital humain.
Thèses
Accueil   /   Post Doctorat   /   Génération automatique de générateurs dynamiques de code à partir de code legacy

Génération automatique de générateurs dynamiques de code à partir de code legacy

Informatique et logiciels Sciences pour l’ingénieur

Résumé du sujet

Contexte
========
Notre laboratoire développe une technologie pour la génération dynamique de code autour de l’outil deGoal, destiné à la conception de générateurs de code spécialisés appelés compilettes. Une compilette est embarquée dans une application afin de générer dynamiquement le code d’un kernel de calcul. Le fait de pouvoir générer dynamiquement le code d’un kernel permet de mettre en œuvre des optimisations qui sont par nature hors de portée d’un compilateur traditionnel : optimisations sur les données à traiter, et sur la connaissance du contexte d’exécution. En comparaison avec les outils de l’état de l’art (compilation dynamique, typiquement Java Just-In-Time compilation, et runtime optimizers), les compilettes ont une très faible empreinte mémoire et génèrent le code beaucoup plus rapidement.
Afin de fournir la meilleure performance d’exécution des kernels spécialisés avec des compilettes deGoal, les compilettes sont implantées à partir d’un langage dédié de haut niveau. Cette solution présente les meilleures garanties en termes de performance d’exécution, mais présente aussi l’inconvénient de nécessiter la réécriture de l’implantation de chaque kernel devant être optimisé dans une compilette. Pour l’industrie logicielle, cette contrainte peut constituer un frein majeur à l’adoption de notre technologie, parce que la minimisation des coûts de production logicielle passe en majorité par une réutilisation maximale des codes sources existants.

Objectif
========
L’objectif de ce travail est de construire un générateur automatique de compilettes capable de travailler à partir d’une base de code existante (typiquement, du code C ANSI), et pouvant s’intégrer à une chaîne de production de code utilisant les technologies traditionnelles de compilateur.

Laboratoire

Département Architectures Conception et Logiciels Embarqués (LIST-LETI)
Service Calcul et Systèmes Numériques
Laboratoire Infrastructure et Ateliers Logiciels pour Puces
Top envelopegraduation-hatlicensebookuserusersmap-markercalendar-fullbubblecrossmenuarrow-down