globalisation des ressources informatiques et des données madeleine - marcel olivier aumage raymond...
Post on 04-Apr-2015
102 Views
Preview:
TRANSCRIPT
Globalisation des Ressources Informatiques et des Données
Madeleine - Marcel
Olivier Aumage Raymond Namyst
LIP - ENS Lyon
Olivier.Aumage@ens-lyon.fr
Projet Logiciel
RMI
Introduction
MadeleineMarcel
Architecture du projet
VTHDVTHD Myrinet SCI …
Madeleine Marcel
PadicoTM
MPI
OpenCCM ProActivePDC
Do!
DSM MomeCORBA
Java VM
GK
PaCO++
Couplage de code de simulation C3D Croissance de plantes
Architecture du projet
VTHDVTHD Myrinet SCI …
Madeleine Marcel
PadicoTM
MPI
OpenCCM ProActivePDC
Do!
DSM MomeCORBA
Java VM
GK
PaCO++
Couplage de code de simulation C3D Croissance de plantes
Madeleine, Marcel, PM2
Interface
Application
PM2
Marcel Madeleine
Iso-malloc
DSM-PM2
Gestion des threads Migration Exploitation des nœuds SMP Scheduler activations Synchronisation Détection d’événements
Gestion des communications Paradigme de type passage de message Support pour RPC et migration Gestion de session Interface générique
Allocation de mémoire iso-adresses
Mémoire virtuellement partagée
Point d’entrée Gestion des RPC
Net-Toolbox Toolbox
Communication de contrôle Routines TCP
Listes Hâchages Tableaux dyn. Arguments Chaînes Allocateur rapide Macros
Madeleine, Marcel
Interface
Application
PM2
Marcel Madeleine
Iso-malloc
DSM-PM2
Gestion des threads Migration Exploitation des nœuds SMP Scheduler activations Synchronisation Détection d’événements
Gestion des communications Paradigme de type passage de message Support pour RPC et migration Gestion de session Interface générique
Allocation de mémoire iso-adresses
Mémoire virtuellement partagée
Point d’entrée Gestion des RPC
Net-Toolbox Toolbox
Communication de contrôle Routines TCP
Listes Hâchages Tableaux dyn. Arguments Chaînes Allocateur rapide Macros
Madeleine Interface générique de communication
Support réseau Gestion de session
Efficacité Portabilité
Richesse fonctionnelle Simplicité
CaractéristiquesAdaptativité Protocoles multi-paradigmes
VIA message passing, remote DMA SCI shared memory, DMA
Protocoles à tampons statiques SBP
Protocoles multi-modes BIP messages courts/longs
Exhaustivité Support multi-protocole Support multi-adaptateur
Architecture Approche modulaire
Module de gestion de tampon (MGT) Module de transmission (MT)
Interface
Gestion des
tampons
Gestionde
protocole
MGT MGT
MT MT MT
RéseauRéseau
GRID-RMI: trois axes Communications
Support des architectures multi-grappes et grilles de grappes
Routage Multiplexage Dynamicité
Réactivité Support au niveau de l’ordonnanceur de threads Agrégation de requêtes de scrutation Ajustement de fréquence
Analyse Gestion de traces et visualisation de chronologies
Communications multi-grappes
RoutageDéploiement
Support multi-grappe Exploitation des Grappes de grappes
Réseaux intra-grappes rapides Liens inter-grappes rapides Hétérogénéité au niveau réseau
Réseau à haut débitRéseau haute
performanceRéseau haute performance
Principe Canaux réels
Liés à un réseau Ne couvrent pas nécessairement tous les noeuds
Canaux virtuels Couvrent tous les noeuds Contiennent plusieurs canaux réels
MyrinetSCI
Virtuel
Fonctionnement Support des retransmissions multi-réseau
Négotiation de MTU Routes statiques Gestion multi-threadée Prise en charge générique
Machine
Mémoire
Bus PCI
Réseau Myrinet
LANai
Réseau SCI
Préservation du débit
Pipeline Réception et ré-émission simultanée avec 2 tampons
Une copie Même tampon pour la réception et la ré-émission
Tampon 1
Tampon 2
Réception
Ré-émission
LANai
Intégration Module de transmission générique Limitation du code traversé sur les passerelles
Interface
Gestion des
tampons
Gestionde
protocole
MGT MGT
MT MT MT
RéseauRéseau
MT générique
Déploiement Démarrage de session
Une approche modulaire Flexibilité Extensibilité
Deux modules Madeleine
Communications Léonie
Contrôle de session
Léonie Sessions
Configurations multi-grappes Lancement unifié
Déploiement en rafale Support pour lanceurs optimisés
Réseau Constructions des tables d’information
Répertoire des processus Tables de routages des canaux virtuels
Ordonnancement Initialisation des cartes, ouverture des canaux
Infrastructure
Madeleine
Léonie
Résumé des problèmes Multiplexage
Connexion complète des canaux réels inadaptée Consommation de ressources
Routage Routes statiques
Pas de dynamicité Routes uniques
Risques de déséquilibres Contrôle de flux
Contentions sur les bus des passerelles
Adéquation du déploiement ?
Dynamicité
Support d’architectures évolutives
Points clésGranularité Niveau processus Niveau grappes
La dynamicité a un coût Scrutations supplémentaires Prise en compte du changement de topologie
La dynamicité est parfois impossible Interfaces de communication à lanceur propriétaire Interfaces sans primitives/potentiel de connexion
dynamique
Changement de topologie Propagation à toute la configuration
Serveur Léonie Processus applicatifs
Deux conséquences Vraisemblablement une synchronisation globale
Impact fort sur l’exécution Prise en charge d’événements asynchrones de Léonie sur
les nœuds applicatifs Nécessité d’un thread dédié Verrouillages délicats
Changement de topologieCas du routage multi-réseau
Nécessité d’un recalcul des routes par Léonie Opération coûteuse
Problème pour les blocs de données en transit sur les passerelles
Routage dynamique ? Ordre des messages Refaire IP ?
Conclusion – support dynamicité Réalisable
pour une dynamicité à gros grain (grappes) pour une faible dynamicité au niveau processus
Prohibitif pour une forte dynamicité au niveau processus
Impossible Interfaces à lanceurs spécifiques Interfaces sans possibilités de connexions dynamiques
MPI, BIP
Réactivité
Threads et scrutations
Support actuel Interaction avec l’ordonnanceur de threads Marcel
Agrégation de requêtes Agrégations par canal Requêtes de niveau bas Pas de réentrance
Fréquence de scrutation Contrôle à très gros grain
Timer, yields, idle Pas de réglages de la fréquence par rapport au réseau
Principe
Processus
Noeud
Marcel
Processus
Processus
Thread
Réseau
LANai
Objectifs Prise en charge des requêtes
Scrutations multi-niveau Meilleure prise en charge de la retransmission sur les
passerelles Scrutations vs. interruptions
Solution mixte ?
Fréquence de scrutation Favoriser la scrutation fréquente des réseaux efficaces Notion de priorité des requêtes
Analyse
Enregistrement de tracesVisualisation de chronologies
Support actuel Outils
FKT Fast Kernel Trace
FUT Fast User Trace
Supertrace Unification des données FKT/FUT
Sigmund Analyse des résultats
Status ?
Principe
Marcel
Processus
Thread
Principe
Marcel
Processus
Thread
Mode noyauMode noyau
Mode utilisateurMode utilisateur
Principe
Marcel
Processus
Thread
Mode noyauMode noyau
Mode utilisateurMode utilisateur
Principe
Marcel
Processus
Thread
Mode noyauMode noyau
Mode utilisateurMode utilisateur
FKT
FUT
Principe
Marcel
Processus
Thread
Mode noyauMode noyau
Mode utilisateurMode utilisateur
FKT
FUT
Su
pert
race
Su
pert
race
Principe
Marcel
Processus
Thread
Mode noyauMode noyau
Mode utilisateurMode utilisateur
FKT
FUT
Sigmund
Objectifs Mise à jour/finalisation des outils existants
Meilleure interface pour les traces applicatives Evénements de haut niveau
Outil de visualisation « intelligent » Chronologie multi-thread/multi-lwp Communications Traitement sémantique des informations ?
Support générique Intégration des traces applicatives et middleware
Interface graphique ?
Conclusion
GRID-RMIMadeleine/Marcel
ConclusionTravaux prévus à trois niveaux
Communications multi-grappes/grilles de grappes Extension des mécanismes de routage
Réactivité et multi-threading Méthodes de scrutation avancées
Outils d’analyse Enregistrement de traces Visualisation d’événements
top related