LO06

TP de programmation parallèle avec PVM

Un aperçu rapide

PVM prend en main et permet de gérer :

L'utilisateur écrit son application comme une collection de tâches coopérantes. Les tâches accèdent aux ressources de PVM à travers une librairie de routines d'interface standard. Ces routines permettent l'initialisation et la terminaison des tâches à travers le réseau aussi bien que les communications et les synchronisations entre tâches. Les primitives de passage de message de PVM permettent l'envoi et la réception de structures de données, mais il y a aussi des primitives de haut niveau telles que le broadcast, la barrière de synchronisation ou la somme globale.

Une tâche peut posséder un controle arbitraire sur les autres tâches. En d'autres termes, à n'importe quel point (moment) de l'exécution d'une application concurrente, n'importe quelle tâche active peut démarrer ou arréter d'autres tâches, ou encore ajouter ou supprimer des ordinateurs de la machine virtuelle. N'importe quel processus peu communiquer et/ou se synchroniser avec n'importe quel autre. N'importe quel type de contrôle et de structure de dépendance peut être implémenté sous un système PVM par un usage approprié  des constructeurs et du langage hôte (en l'occurence, le C ou le Fortran).