Thèse soutenue

Parallelisation automatique par insertion de directives

FR
Auteur / Autrice : Georges-André Silber
Direction : Alain Darte
Type : Thèse de doctorat
Discipline(s) : Sciences et techniques
Date : Soutenance en 1999
Etablissement(s) : Lyon, École normale supérieure (sciences)

Résumé

FR

Dans cette these, nous nous sommes places dans le cadre de la parallelisation automatique par insertion de directives, c'est-a-dire des transformations de code au niveau du code source ou le parallelisme est exprime par des directives donnees au compilateur. Ce document expose trois apports a ce domaine. Les deux premiers apports sont des extensions au modele polyedrique de representation des nids de boucles imbriquees. La premiere extension se situe au niveau de la fonction objective. Notre objectif est la recherche de boucles completement permutables, transformation necessaire a une transformation appelee tiling permettant de modifier le grain de la parallelisation. La deuxieme extension presente un nouveau type de graphe, le graphe des dependances mixte, permettant de traiter les codes a controle non statique, c'est-a-dire les codes ou des expressions de structures de controle (if ou do) sont impliquees dans des dependances de donnees. En utilisant ce graphe, nous presentons une methode pour introduire de la memoire temporaire, ce qui permet de casser les antidependances impliquant des structures de controle. Le troisieme apport de cette these est un outil appele nestor destine a faciliter l'implantation de transformations source a source de programmes fortran. Une extension de l'algorithme de parallelisation d'allen, callahan et kennedy utilisant le graphe des dependances mixte a ete implantee dans notre outil.