



Next: Analyse Up: Réseau complet de l'application Previous: Schéma de communication Contents
Protocoles
Les protocoles traditionnels pour les applications distribuées comme MPI marchent bien pour les applications homogènes, mais ils ne conviennent pas bien aux applications hétérogènes comme celle-ci. Il existe des bibliothèques spécialisées aux applications hétérogènes, mais on a rencontré des difficultés pour les intégrer dans cette application. Comme la communication dans cette application n'est pas trop compliquée, on a décidé de créer une bibliothèque pour cette application.
Cette bibliothèque est un petit emballage de TCP et sockets standard. Elle permet de se connecter à un hôte, d'écouter des connexions, et d'envoyer ou recevoir des données avec un appel d'une fonction par opération. Elle s'occupe de la gestion des connexions, et permet d'envoyer ou recevoir des données sur plusieurs connexions en même temps.
On peut voir les modules de fluide comme un grand logiciel parallèle homogène. Alors on peut utiliser MPI pour les communications à l'intérieur de ce module. MPI est plus optimisé pour les transferts de données entre les noeuds homogènes, surtout pour deux noeuds sur le même ordinateur biprocesseur, alors MPI est plus efficace pour le module de fluide. Le module de fluide n'utilise pas beaucoup la fonctionnalité de MPI, alors on a gardé la possibilité d'utiliser notre bibliothèque même pour les communications internes.
La bibliothèque ne permet pas de construire le réseau de communication de l'application. Alors on a créé un script avec Python qui construit le réseau et lance tous les modules. Le script stocke une liste de tous les noeuds disponibles pour les modules de fluide et de rendu et construit le réseau à partir de cette liste et le nombre de chaque type de module à lancer.




Next: Analyse Up: Réseau complet de l'application Previous: Schéma de communication Contents Michael Ash 2005-09-21