Description du projet PARA

L’objectif du projet PARA est d’étudier et développer des méthodes d’optimisation pour exploiter au mieux toutes les formes de parallélisme inhérentes aux architectures modernes des systèmes informatiques. Pour ce faire, nous avons choisi d’associer des communautés de développeurs d’applications, spécialistes de la compilation et des systèmes d’exploitation, évaluateurs des performances et concepteurs systèmes afin d’optimiser globalement l’efficacité des codes des domaines applicatifs sélectionnés sur des plates-formes de la génération à venir. Les architectures cibles seront les systèmes bâtis autour des nouvelles générations de processeurs généralistes ou plus spécialisés. Nous proposons d’associer étroitement les techniques de microbenchmarking et de génération adaptative de programmes. Nous adressons également la tendance forte vers une utilisation plus large du parallélisme entre tâches (machines multiprocesseurs, puces multi-coeurs, technologie SMT… ) par l’étude de méthodes et outils d’analyse de code en vue de détecter le parallélisme caché dans des applications en apparence séquentielles. Conjointement, nous mènerons des travaux sur la conception de systèmes de gestions de processus légers extrêmement efficaces (ordonnancement à deux niveaux, filaments) permettant de gérer un niveau de parallélisme le plus fin possible. Seront aussi étudiées l’opportunité et la faisabilité d’accélérateurs matériels adaptés à des applications particulières parmi les démonstrateurs choisis.

Ce projet a été soumis à l’appel à projets 2005 de l’Agence Nationale de la Recherche, dans le cadre du Programme de Recherche “Calcul Intensif et Grilles de Calcul” et retenu sous la référence ANR-05-CIGC-001. Vous pouvez consulter une description détaillée du contenu technique du projet et de ses livrables dans son annexe technique.