Projet Apache

previous up next contents
Précédent : Grands domaines d'application Remonter : Projet APACHE, Algorithmique Parallèle, Programmation 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. ATHAPASCAN-0 propose d'étendre 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 des avantages de cette approche (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 doit donc mettre 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. De plus, il est possible 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 [*], réseaux de station UNIX (Linux, Solaris, AIX) et une version de MPI du domaine public sur le protocole IP. Des portages sont envisagés rapidement sur SGI et NT.

Une présentation, une documentation utilisateur et les manuels d'installation sont accessibles via le serveur du projet http://www-apache.imag.fr (60 chargements au cours de l'année 97).



Notes:

...auto-ordonnancement
En anglais self-scheduling
...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 : Grands domaines d'application Remonter : Projet APACHE, Algorithmique Parallèle, Programmation Suivant : Résultats nouveaux