Environnement pour la compilation dirigée par les données : supports d’exécution et expérimentations - INRIA - Institut National de Recherche en Informatique et en Automatique Accéder directement au contenu
Thèse Année : 1995

Environments for data-driven compilation: execution supports and experiments

Environnement pour la compilation dirigée par les données : supports d’exécution et expérimentations

Résumé

The difficulty of programming distributed memory parallel architectures is an impediment to the exploitation of their potential computational power. Among the different approaches proposed for getting around this difficulty, the data-driven compilation seems promising. The source program, expressed for instance in HPF, is an imperative sequential program in which it is specified how data are distributed amongst the processors; the compiler produces a parallel code from this program according to the data distribution. Implementing this approach requires the development of complete environments. This thesis presents the work carried out in the framework of such an environment, the Pandore environment. Our main concerns are the design and the implementation of a portable and efficient runtime system that must complete the compiler as well as the performance evaluation of the programs generated. First, we place the data-driven compilation approach in the context of distributed memory architecture programming. Then, we define high level operations that permit the description of compilation schemes and allow for optimizations. Two types of target machines are considered: message passing machines and machines provided with a shared virtual memory. The key points of the realization of these operations in the compiler and in the runtime system are addressed. The emphasis is put on distributed data management and communication optimizations at runtime. An implementation in the Pandore environment is then expounded. Performance evaluation issues are also studied, first, through a series of experiments on several applications and second, through the definition of measurement and visualization tools suited for data driven compilation.
La difficulté de programmation des architectures parallèles à mémoire distribuée est un obstacle à l'exploitation de leur puissance de calcul potentielle. Parmi les différentes approches proposées pour pallier à cette difficulté, celle de la compilation dirigée par les données semble prometteuse, notamment dans le domaine du calcul scientifique. Le programme source, exprimé par exemple en HPF, est un programme séquentiel impératif dans lequel il est précisé comment sont réparties les données sur les processeurs ; le compilateur dérive un code parallèle en distribuant le contrôle d'après la distribution des données. La mise en oeuvre de cette approche nécessite le développement d'environnements complets. Cette thèse présente le travail réalisé dans le cadre d'un environnement de ce type : l'environnement Pandore. Nous nous sommes intéressés à la conception et la réalisation d'un exécutif portable et efficace qui doit être associé au compilateur ainsi qu'à l'évaluation des performances des programmes générés. Après avoir situé l'approche de la compilation par distribution de données dansle contexte plus large de la programmation des machines parallèles à mémoire distribuée, nous définissons des opérations de haut niveau qui permettent la description des schémas de compilation et la prise en compte des optimisations. Deux types de machines cibles sont considérés, d'une part des machines à messages et d'autre part des machines disposant d'un mécanisme de mémoire virtuelle partagée. Les points clés de la mise en oeuvre des opérations dans le compilateur et l'exécutif sont abordés. Nous insistons plus particulièrement sur la gestion des données distribuées et sur les optimisations des communications à l'exécution. Une mise en oeuvre réalisée dans l'environnement Pandore est ensuite détaillée. L'évaluation des performances des programmes est également étudiée, dans un premier temps par une série d'expérimentations sur plusieurs applications et dans un deuxième temps par la définition d'outils de mesure et de visualisation adaptés à la compilation par distribution de données.
Fichier principal
Vignette du fichier
these-maheo.pdf (1.16 Mo) Télécharger le fichier
Loading...

Dates et versions

tel-00497580 , version 1 (05-07-2010)

Identifiants

  • HAL Id : tel-00497580 , version 1

Citer

Yves Mahéo. Environnement pour la compilation dirigée par les données : supports d’exécution et expérimentations. Modélisation et simulation. Université Rennes 1, 1995. Français. ⟨NNT : ⟩. ⟨tel-00497580⟩
183 Consultations
173 Téléchargements

Partager

Gmail Facebook X LinkedIn More