Détail d'une fiche   Version PDF

COMPSYS (SR0019IR)

Compilation et systèmes embarqués de calcul

COMPSYS →  COMPSYS (SR0727VR)


Statut: Terminée

Responsable : Alain Darte

Mots-clés de "A - Thèmes de recherche en Sciences du numérique - 2023" : Aucun mot-clé.

Mots-clés de "B - Autres sciences et domaines d'application - 2023" : Aucun mot-clé.

Domaine : Algorithmique, programmation, logiciels et architectures
Thème : Architecture, langages et compilation

Période : 01/01/2004 -> 31/12/2015
Dates d'évaluation : 21/03/2012 , 22/03/2016

Etablissement(s) de rattachement : U. LYON 1 (UCBL), ENS LYON, CNRS
Laboratoire(s) partenaire(s) : LIP (UMR5668)

CRI : Centre Inria de Lyon
Localisation : Ecole normale supérieure de Lyon - Laboratoire de l'Informatique du Parallélisme (LIP)
Code structure Inria : 071007-0

Numéro RNSR : 200418268U
N° de structure Inria: SR0019IR

Présentation

COMPSYS est une équipe-projet de recherche Inria, commune au Laboratoire de l'Informatique du Parallélisme (LIP). Elle est localisée à l'Ecole Normale Supérieure de Lyon (ENS Lyon).

L'objectif de Compsys est le développement de techniques de compilation, plus précisément d'analyses et d'optimisations de codes, appliquées aux domaine des systèmes embarqués de calcul (embedded computing systems). Compsys s'intéresse à la fois aux analyses et optimisations bas niveau (back-end) pour les processeurs spécialisés et aux analyses et transformations de haut niveau (principalement source à source et polyédriques), pour les accélérateurs matériels (programmables ou configurables). La caractéristique principale de Compsys est de se concentrer sur les problèmes d'optimisation combinatoire (avec algorithmes de graphes, programmation linéaire, optimisations sur les polyèdres) sous-jacents aux optimisations de code (allocation de registres, optimisation de la mémoire, ordonnancement, génération automatique d'interfaces, etc.) et sur la validation de ces techniques par le développement d'outils de compilation.


Axes de recherche

  • Analyses et transformations de programmes (principalement au niveau source) pour la synthèse de haut niveau d'accélérateurs matériels (HLS) et la compilation pour accélérateurs programmables. Spécifications de processus communicants, génération d'interfaces, optimisations mémoire, optimisations des communications, génération de code pour FPGA.
  • Génération et optimisation de codes (principalement au niveau back-end) pour les processeurs embarqués. Optimisations agressives et just-in-time (allocation de registres), représentations intermédiaires (static single assignment), analyses de programmes.
  • Développement d'outils d'optimisation (principalement polyédriques) pour l'ordonnancement, l'analyse de code, l'optimisation mémoire, la simplification d'expressions affines, la génération de code.

Relations industrielles et internationales