Applications Parallèles pour l'Embarqué – APE
SYNTHESE. Les deux principaux buts de ce projet sont (1) de proposer une approche réaliste de la parallélisation, adaptée aux nouvelles applications temps réel embarquées complexes, et pouvant être rapidement déployée sur les futurs systèmes embarqués, dont la plupart s'orientent vers des multiprocesseurs homogènes, (2) de montrer comment respecter les contraintes temps réel d'applications embarquées ainsi parallélisées. Cette approche sera démontrée sur l'une des futures applications embarquées de Thalès, la radio logicielle, et sur l'un des futurs processeurs embarqué haute-performance de STMicroelectronics qui sera un multiprocesseur.
POURQUOI EST-IL MAINTENANT INDISPENSABLE DE PARALLELISER LES APPLICATIONS EMBARQUEES ? De toute évidence, les systèmes embarqués ou enfouis (téléphonie mobile, applications médicales, électronique grand public,...) contiennent de plus en plus de fonctionnalités, et des fonctionnalités de plus en plus complexes. En conséquence, ces systèmes incorporent de plus en plus souvent des processeurs, et des processeurs de plus en plus performants et sophistiqués. Au point où des processeurs embarqués sont maintenant utilisés pour des applications haute performance; par exemple, IBM a utilisé un processeur embarqué (le PowerPC 440) dans son dernier supercalculateur BlueGene/L au lieu de son dernier processeur généraliste (le Power G5), et Nokia fabrique un téléphone portable/console de jeux (la N-Gage) à partir de processeurs embarqués. Or, le domaine des processeurs haute-performance (qu'ils soient généralistes ou embarqués) est en train de subir un bouleversement profond : jusqu'à très récemment encore, la performance des processeurs progressait essentiellement grâce à l'augmentation régulière de la fréquence de fonctionnement (loi de Moore). Mais les principaux constructeurs de processeurs considèrent maintenant que cette progression va considérablement se ralentir, et que les progrès en performance vont être dorénavant obtenus essentiellement par le parallélisme. En conséquence, à terme, cela signifie que la performance d'un programme ne progressera, avec les nouvelles générations de processeurs, que si ce programme a été parallélisé.
QUELLES SONT LES CONTRAINTES DES APPLICATIONS/SYSTEMES EMBARQUES QUI RENDENT INADEQUATS LES TRAVAUX EN PARALLELISATION AUTOMATIQUE POUR LE CALCUL SCIENTIFIQUE ? Pour l'industrie des processeurs embarqués, cette nouvelle situation soulève deux problèmes essentiels. (1) Si les compilateurs sont capables de paralléliser automatiquement certains programmes (structures de données et flot de contrôle réguliers, e.g., calcul scientifique, traitement du signal), ce n'est pas le cas pour les applications de plus en plus complexes que l'on exécute maintenant sur les processeurs embarqués (encodeur/décodeur MPEG4, jeux vidéo,...). Il faut donc rapidement trouver des méthodes de parallélisation à la fois alternatives, pragmatiques et pérennes (en raison du coût de développement et d'optimisation des logiciels). (2) Les applications embarquées doivent respecter des contraintes de temps réel. S'il existe de nombreux travaux de recherche sur le respect des contraintes de temps réel (WCET) pour des processeurs mêmes complexes, il existe en revanche très peu de travaux sur les applications parallèles s'exécutant sur des multiprocesseurs. Or, comme ce type d'architectures va rapidement devenir incontournable, il est urgent d'aborder ce problème.
QUELS SONT NOS OBJECTIFS ? Les deux premiers buts du projet sont donc de proposer des méthodes alternatives (à la compilation statique) de parallélisation des programmes, et d'étudier la façon dont les contraintes temps réel peuvent être satisfaites pour de telles applications. Le troisième but du projet est de proposer une exécution parallèle adaptative du programme (par opposition à la répartition statique et fixe des tâches sur les différents coeurs d'un multiprocesseur), c'est-à-dire guidée par les deux informations précédentes (par
Coordination du projet
Organisme de recherche
L'auteur de ce résumé est le coordinateur du projet, qui est responsable du contenu de ce résumé. L'ANR décline par conséquent toute responsabilité quant à son contenu.
Partenariat
CEA - LIST
Aide de l'ANR 719 547 euros
Début et durée du projet scientifique :
- 36 Mois