Épopée d’expériences DIET sur Grid5000 Raphaël Bolze LIP ENS Lyon, Doctorant CNRS BDI Projet GRAAL http://graal.ens-lyon.fr
Plan Présentions de DIET Fonctionnement de Grid5000 (vue utilisateur) Principe de base Fonctionnement de Grid5000 (vue utilisateur) Les sites. Réservation : OAR, gridPrem’s Les expériences possibles Passage à l’échelle Performance de DIET Tester les fonctionnalités de DIET Récit d’une expérience Description Résultats Bilan de l’expérience Autre expérience Perspectives
Distributed Interactive Engineering Toolbox http://graal.ens-lyon.fr/DIET
RPC et Grid Computing: Grid RPC Request AGENT(s) Client S2 ! A, B, C Answer (C) Op(C, A, B) S4 S3 S1 S2
Environment DIET CLIENT Data management Application S Data management Application Sequential Application Parallel Application
DIET Architecture JXTA MA MA LA LA FAST library LDAP NWS LA LA Client Master Agent MA JXTA MA Server front end LA LA FAST library Application Modeling System availabilities LDAP NWS LA LA Local Agent
DIET : installation et déploiement Un compte utilisateur CORBA : omniORB4 gcc/g++ Librairies nécessaires pour les SeD. (BLAS) Déploiement : Fichiers de configuration; Lancement de omniNames (serveur de noms CORBA); Lancement de l’outil de log : LogCentral; Lancement de la hiérarchie DIET.
DIET : déploiement LogCentral XML: Ressources Machines Stockages DIET Hiérarchie
Grid’5000 vue utilisateur
Fonctionement de Grid5000 963 noeuds 1926 processeurs 4 types de processeurs différents : IA64 powerPC x86 x86-64 Un ‘/home/lyon/rbolze’ pour chaque site Connexion sur les frontales des sites pour la réservation OAR Pas de communication vers l’extérieur Orsay 216 Lyon 56 Grenoble 124 Sophia 105 Toulouse 57 Bordeaux 48 Rennes 259 Lilles 51 Nancy 47
Les expériences possibles Passage à l’échelle. DIET sur un grand nombre de machines Connaître les performances de DIET Établir un référentiel des performances de DIET Coût de l’ordonnancement Surcoût des couches DIET (client/serveur) Tester les différentes fonctionnalités de DIET Outil de monitoring : LogService Plugin-scheduler File d’attente Ordonnancement par fenêtrage Persistance des données DTM/JUXMEM Multi-MA …
Expérience : Calcul intensif But : Connaître les surcoûts de DIET. Faire une expérience dimensionnante avec DIET. Protocole de l’expérience : Déployer DIET sur un maximum de site en employant un maximum de machines; Une quantité de travail initial : nombre défini de requêtes lancer par un grand nombre de client; Comparaison temps d’exécution DIET / temps moyens locaux d’exécution sur les machines serveurs.
Calcul intensif : réalisation Planification : Réservation des machines avec OAR/GridPrem’s oarsub -r "2006-02-20 9:00:00" -l nodes=50,walltime=4 "sleep 14400" Host:Port = capricorne.lyon.grid5000.fr:42074 IdJob = 25532 Reservation mode : waiting validationReservation valid --> OK
Calcul intensif : réalisation Étapes pour le lancement d’une expérience : Obtenir la liste des machines réservées. Vérification des machines. Modifier le fichier de déploiement en fonction des machines obtenues Déploiement de la hiérarchie avec GoDIET Lancement des clients
Calcul intensif 1 MA 8 LA 540 SeD dgemm 2 requêtes par SeD, si plus placement des requêtes dans une file d’attente 1120 clients répartis sur 140 machines les clients font des requêtes dgemm sur une matrice de taille 2000 pendant X s. Ordonnancement Round-Robin basé sur le time_since_last_solve Orsay : 40 s Lyon : 38 s Toulouse : 33 s Sophia : 40 s Parasol : 33 s Bordeaux : 33 s Paraci : 11 s Lilles : 34 s Paravent : 9 s
Calcul intensif :premiers résultats
Recherche d’une explication TIME_SINCE_LAST_SOLVE= inf TIME_SINCE_LAST_SOLVE= 379 Orsay omniORB-4.0.6 gcc-4.0 diet omniORB-4.0.6 gcc-3.3 diet MA SeD Lyon TIME_SINCE_LAST_SOLVE= 379 TIME_SINCE_LAST_SOLVE= 411
Calcul intensif : Rappel sur la configuration de l’expérience 1120 clients qui appellent le service « dgemm » sur la plate-forme DIET 540 SeD capables d’exécuter le service « dgemm » Les SeD ne peuvent pas exécuter plus de deux requêtes à la fois Ordonnancement Round-Robin basé sur le time_since_last_solve.
Bilan de l’expérience Utilisation de Grid5000 Lancement des expériences Passage à l’échelle réussit Bug omniORB-4.0.6/gcc-4.0 Problème de compatibilité des fonctionnalités DIET. Modification de la méthode de lancement avec GoDIET Performance de l’ordonnancement Moyenne = 1,97 s Ecart Type = 5,48 s Mediane = 0,51 s Max = 65,01 s Min = 0.009 s
Autre expérience Test de l’impact du LogService Publication : PARALLEL AND DISTRIBUTED COMPUTING Workshop of ICCSA 2006
Perspectives D’autres expériences : Calcul avec transport des données Test du plugin-scheduler Test de la persistance des données DTM/JUXMEM Impact de la hiérarchie DIET. Tolérances aux fautes …
Questions ?