Thèse soutenue

Transformations de programmes pei : application au parallelisme de donnees
FR  |  
EN
Accès à la thèse
Auteur / Autrice : Stéphane Genaud
Direction : Guy-René Perrin
Type : Thèse de doctorat
Discipline(s) : Sciences appliquées
Date : Soutenance en 1997
Etablissement(s) : Université Louis Pasteur (Strasbourg) (1971-2008)

Résumé

FR

Cette these est une etude sur l'apport d'un langage equationnel pour la construction de programmes paralleles. Nous montrons les liens etroits existants entre ce langage et les langages a parallelisme de donnees, et nous utilisons les proprietes formelles de notre langage pour realiser des transformations de programmes et montrer l'incidence de ces transformations sur des programmes a parallelisme de donnees. Le deuxieme chapitre expose les principes fondamentaux du langage, les definitions prealables a travers quelques exemples simples. Le troisieme chapitre donne une definition d'un calcul de raffinement dans ce langage. Nous exposons aussi dans ce chapitre les prototypes d'outils qui peuvent etre associes a la construction des programmes et a leur raffinement. Le quatrieme chapitre illustre l'utilisation du calcul de raffinement pour effectuer des transformations types, que nous qualifions de strategies. Trois d'entre elles sont enoncees et prouvees. La premiere strategie permet la simplification des communications. La deuxieme, permet le raffinement d'une equation dite uniformisee par une equation definissant une communication de type diffusion. La troisieme strategie permet d'introduire une operation de reduction, propre au modele data-parallele. Enfin, nous detaillons une strategie utilisant l'equivalence faible pour transformer les alignements. Ces strategies sont illustrees sur un exemple tout au long du chapitre. Le dernier chapitre est consacre a l'outil de traduction de notre langage vers le langage hpf. Nous exposons les mecanismes permettant de passer d'un programme equationnel a un programme imperatif, et les restrictions necessaires pour leur traduction. Pour appuyer cette idee nous decrivons precisemment notre schema de traduction vers hpf. Un prototype a d'ailleurs ete realise pour valider les arguments avances. Enfin, nous proposons quelques pistes pour ameliorer ce traducteur dans le but de profiter de la semantique particuliere d'hpf