Thèse soutenue

Optimisation de la localite de donnees et du parallelisme a grain fin

FR  |  
EN
Auteur / Autrice : Daniel Windheiser
Direction : William Jalby
Type : Thèse de doctorat
Discipline(s) : Informatique
Date : Soutenance en 1992
Etablissement(s) : Rennes 1

Résumé

FR

Afin d'atteindre les niveaux de performance requis pour traiter les applications du grand challenge, les architectures des systemes hautes performances ont systematiquement recours au parallelisme et aux systemes hierarchiques de memoire. Cette these presente des techniques de compilation qui, en exploitant la localite de donnees et le parallelisme inherent aux codes numeriques, permettent de reduire le debit memoire et d'utiliser efficacement le parallelisme a grain fin. L'optimisation de la localite de donnees comporte 3 volets: la detection de la localite dans les nids de boucles, l'exploitation et l'amelioration de la localite par des transformations de programmes. Notre approche repose sur la notion de fenetre de references qui identifie l'ensemble des elements d'un tableau reutilises au cours de l'execution d'une boucle. Nous montrons comment determiner a la compilation une expression analytique de la fenetre de references. Puis nous presentons son utilisation pour ameliorer les proprietes de localite par des transformations de boucles appropriees (echange de boucles, blocage,. . . ). L'evolution recente des architectures des microprocesseurs se traduit par un accroissement sensible du parallelisme a grain fin aussi bien dans les architectures superpipeline que superscalaire. Nous etudions une classe d'algorithmes de pipeline logiciel, pour les boucles regulieres, qui met l'accent sur l'exploitation efficace des ressources. Cette approche nous permet, d'une part, d'etudier la complexite du probleme de l'ordonnancement de boucles avec contraintes de ressources et, d'autre part, de concevoir un algorithme adapte aux pipelines explicites presents dans le processeur intel i860