Flot de conception rigoureux pour la programmation de plates-formes manycore.
Auteur / Autrice : | Paraskevas Bourgos |
Direction : | Saddek Bensalem |
Type : | Thèse de doctorat |
Discipline(s) : | Informatique |
Date : | Soutenance le 09/04/2013 |
Etablissement(s) : | Grenoble |
Ecole(s) doctorale(s) : | École doctorale Mathématiques, sciences et technologies de l'information, informatique (Grenoble ; 1995-....) |
Partenaire(s) de recherche : | Laboratoire : VERIMAG |
Jury : | Examinateurs / Examinatrices : Albert Cohen, Radu Grosu, Roberto Passerone, Jean-Claude Fernandez, Joseph Sifakis |
Rapporteur / Rapporteuse : Albert Cohen, Radu Grosu |
Mots clés
Résumé
L'objectif du travail présenté dans cette thèse est de répondre à un verrou fondamental, qui est «comment programmer d'une manière rigoureuse et efficace des applications embarquées sur des plateformes multi-coeurs?». Cette problématique pose plusieurs défis: 1) le développement d'une approche rigoureuse basée sur les modèles pour pouvoir garantir la correction; 2) le « mariage » entre modèle physique et modèle de calcul, c'est-à-dire, l'intégration du fonctionnel et non-fonctionnel; 3) l'adaptabilité. Pour s'attaquer à ces défis, nous avons développé un flot de conception rigoureux autour du langage BIP. Ce flot de conception permet l'exploration de l'espace de conception, le traitement à diffèrent niveaux d'abstraction à la fois pour la plate-forme et l'application, la génération du code et le déploiement sur des plates-formes multi-cœurs. La méthode utilisée s'appuie sur des transformations source-vers-source des modèles BIP. Ces transformations sont correctes-par-construction. Nous illustrons ce flot de conception avec la modélisation et le déploiement de plusieurs applications sur deux plates-formes différentes. La première plate-forme considérée est MPARM, une plate-forme virtuelle, basée sur des processeurs ARM et structurée avec des clusters, où chacun contient plusieurs cœurs. Pour cette plate-forme, nous avons considérée les applications suivantes: la factorisation de Cholesky, le décodage MPEG-2, le décodage MJPEG, la Transformée de Fourier Rapide et un algorithme de demosaicing. La seconde plate-forme est P2012/STHORM, une plate-forme multi-cœur, basée sur plusieurs clusters capable d'une gestion énergétique efficace. L'application considérée sur P2012/STHORM est l'algorithme HMAX. Les résultats expérimentaux montrent l'intérêt du flot de conception, notamment l'analyse rapide des performances ainsi que la modélisation au niveau du système, la génération de code et le déploiement.