POLCA

POLCA

Programming Large Scale Heterogeneous Infrastructures

Le Projet POLCA vise à développer un modèle de programmation applicable aux architectures embarquées et HPC (calcul hautes performances). Ce modèle sera basé sur des transformations mathématiques et proposera des annotations et des outils visant à mieux paralléliser et distribuer les données et les traitements sur l’architecture cible.

Expertises:

Evolutivité des systèmes embarqués et réseaux IoT 

Domaine: Secteur numérique 

Fiche projet:

Equipe du projet

Contexte

Aujourd’hui, que ce soit dans le domaine de l’embarqué ou celui du calcul haute performance, les développeurs se trouvent face à des architectures de plus en plus hétérogènes et difficiles à programmer : processeurs spécialisés ou multicœurs, FPGA hybrides, etc.
Malheureusement, aujourd’hui aucun modèle de programmation ne répond adéquatement aux besoins des développeurs qui vont alors soit mixer différents modèles de programmation ou utiliser des environnements spécifiques qui imposent leurs propres contraintes et limitations.

Objectifs du projet

Le projet POLCA présente les objectifs suivants :

  • Développer un nouveau modèle de programmation adapté pour la programmation d’infrastructures hétérogènes : concept, bases mathématiques, syntaxe et méthodologie
  • Développer une chaine d’outils supportant le modèle
  • Démontrer la pertinence de l’approche via son illustration sur des cas d’application pertinents de point de vue industriel.

Résultats

Des premiers travaux sur l’élaboration des bases mathématiques et la spécification des exigences pour les cas d’application ont été réalisés.
Le CETIC envisage d’illustrer dans POLCA le bénéfice de la parallélisation et l’accélération à base de FPGA, en particulier à travers des cas d’applications dans les domaines de la bio-informatique et du traitement du signal

Valeur ajoutée pour les entreprises

Pour le CETIC, la valorisation de l’approche POLCA est dirigée vers le support du processus de conception de systèmes embarqués à base de FPGA complexes et hybrides. L’approche permettra une meilleure exploitation des ressources des architectures cibles et une meilleure gestion de la complexité matérielle et logicielle.