Thèse soutenue

Parallelisation d'un langage fonctionnel sur une machine parallele avec une architecture non conventionnelle

FR  |  
EN
Auteur / Autrice : AGUSTIN RAYMUNDO ORTEGA-AGUILAR
Direction : Patrick Bellot
Type : Thèse de doctorat
Discipline(s) : Sciences appliquées
Date : Soutenance en 1995
Etablissement(s) : Paris 6

Résumé

FR

Cette these decrit la parallelisation du langage applicatif graal sur une architecture non conventionnelle, telle que la machine armen. Graal est un langage fonctionnel base sur la theorie de combinateurs. Son principe fondamental est la notion de forme fonctionnelle. L'implementation parallele de graal a ete effectuee sous la forme d'un interprete qui s'occupe d'evaluer directement les expressions donnees par l'utilisateur. Les expressions paralleles sont evaluees par l'ensemble de processeurs constituant la machine. La reduction des expressions sequentielles se fait dans le meme processeur, que la ou elles sont lues. Le principe utilise pour la construction de l'interprete est celui de la reduction de graphe. Un mecanisme explicite de gestion d'expressions parallelisees a ete cree. Des etats ont ete definis pour effectuer cette gestion. Une nouvelle instruction, notee par, a ete ajoutee dans le noyau de base de la version parallele de graal. Elle permet la parallelisation de fonctions et d'expressions. Puisque cette instruction ne fait pas reference a un processeur specifique, les programmes ainsi parallelises sont alors independants du nombre de processeurs et de la topologie de la machine. Une couche de programmation a ete construite au-dessus de graal pour la creation d'une version parallele de scheme. Les fonctions scheme sont transformees en code graal parallele. Un mecanisme d'abstraction de variables a ete propose a cet effet. Il a ete programme en graal ce qui le rend transparent pour l'utilisateur. Il doit faire appel a une fonction de l'interprete quand il veut passer au mode scheme. Il est possible de melanger du code graal et du code scheme