Projet : APACHE

previous up next contents
Précédent : Les bibliothèques mathématiques Remonter : Algorithmique Parallèle, Programmation et Répartition Suivant : Résultats nouveaux


   
Logiciels

 

Le noyau exécutif Athapascan-0

Résumé :

Les noyaux exécutifs les plus répandus actuellement pour la programmation parallèle sont les bibliothèques PVM et MPI. Dans ces noyaux, aucun mécanisme n'est prévu pour faire de la répartition dynamique de la charge de calcul et le recouvrement des latences de communication par du calcul. ATHAPASCAN-0 étend le modèle de réseau statique de processus lourds communicants (PVM, MPI) à celui de réseau dynamique de processus légers communicants. Ainsi, tout calcul peut se décharger en créant un calcul auxiliaire porté par un processus léger sur un processeur distant. Cette méthode donne de la flexibilité pour structurer les calculs (une fonction ou procédure par processus légers) qui sont placés explicitement sur un processeur ou un autre. L'intérêt de cette approche est qu'elle est proche du paradigme processus communicants, et donc qu'elle peut hériter de ses avantages (portabilité et efficacité). Un autre avantage est qu'elle offre une boîte à outil riche pour gérer données et calcul, grâce aux primitives variées d'échange de messages et d'accès à des mémoires distantes.

En substance, le noyau exécutif ATHAPASCAN-0 propose des mécanismes de création de processus localement et à distance accompagnés de fonctions élémentaires de communication entre ces processus. Chaque noeud de la machine parallèle assure une gestion par multiprogrammation des processus qu'il supporte. Cette gestion implique une désactivation du processus actif lors d'une opération de communication dont la durée présumée peut permettre à un autre processus de faire un calcul utile. La fin d'une communication implique qu'un processus suspendu peut à nouveau s'exécuter. Le noyau exécutif local à un noeud met en oeuvre une politique d'ordonnancement de ces processus qu'on appelle auto-ordonnancement [*] pour la distinguer des ordonnancements mis en oeuvre au niveau applicatif. Cette politique rend le noeud réactif aux événements du réseau afin de traiter les communications aussi vite que possible. ATHAPASCAN-0 permet de contrôler plus précisément le recouvrement calcul - communication au sein d'un même processus par l'utilisation d'opérateurs de communication totalement asynchrones.

Le noyau exécutif ATHAPASCAN-0 est une bibliothèque C construite au dessus de POSIX (standard pour les bibliothèques de processus légers) et de MPI (standard pour les bibliothèques de communication). Elle est disponible sur IBM-SP, CRAY T3E [*], SGI 2000, réseaux de station UNIX (Linux, Solaris, AIX) et une version de MPI du domaine public sur le protocole IP. D'autres supports exécutifs analogues, tout en présentant des variations, existent comme PM2 développé au LIFL et au LIP, et Chant ou Converse aux états Unis Une présentation, une documentation utilisateur et les manuels d'installation sont accessibles via le serveur du projet http://www-apache.imag.fr.



Footnotes

... auto-ordonnancement[*]
En anglais self-scheduling
... CRAY T3E [*]
La version du CRAY T3E utilise la bibliothèque de processus légers MARCEL développée au LIFL.


previous up next contents
Précédent : Les bibliothèques mathématiques Remonter : Algorithmique Parallèle, Programmation et Répartition Suivant : Résultats nouveaux