1 / 35

Les clusters

Les clusters. Cédric LHERM Ingénieurs 2000 5ème année. Sommaire. Présentation : qu’est ce que le clustering ? Problématique (problèmes d’architecture) Les clusters d’applications architecture algorithmes utilisés librairies exemples Les clusters de fichiers conception

ciro
Download Presentation

Les clusters

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Les clusters Cédric LHERM Ingénieurs 2000 5ème année

  2. Sommaire • Présentation : qu’est ce que le clustering ? • Problématique (problèmes d’architecture) • Les clusters d’applications • architecture • algorithmes utilisés • librairies • exemples • Les clusters de fichiers • conception • structure des fichiers • statistiques • Conclusion Cédric LHERM Ingénieurs 2000 5ème année

  3. Qu’est ce que le clustering ? Définition : Méthode permettant d’accélérer l’exécution d’un programme informatique en divisant celui-ci en multiples segments exécutés simultanément sur différentes machines Cédric LHERM Ingénieurs 2000 5ème année

  4. Quelques mots de vocabulaire Node : Poste client connecté au réseau et capable d’exécuter du code informatique sous l’ordre d’un serveur. Node Server : Serveur du cluster d’ordinateurs. Il est responsable de la répartition du travail entre les différents postes clients ainsi que de leur synchronisation. Il récupère également les erreurs et les résultats des calculs. Cédric LHERM Ingénieurs 2000 5ème année

  5. Problématique • Exécution d’une application partagée entre plusieurs ordinateurs d’un réseau • Hétérogénéité des différentes machines (Sun, GNU/Linux, Windows NT, …) • Partage de la charge • Temps de latence Cédric LHERM Ingénieurs 2000 5ème année

  6. 1ère partie Les clusters d’applications Cédric LHERM Ingénieurs 2000 5ème année

  7. Pourquoi des clusters d’application ? • Possibilité d’utiliser les ressources matérielles de machines peu utilisées. • Capacités grandissante des réseaux informatiques • Prix du matériel informatique en constante baisse. • Compatibilité et hétérogénéité • Lenteur des réseaux informatique • Administration système des processus Cédric LHERM Ingénieurs 2000 5ème année

  8. Comparaison Architecture multiprocesseurs • coût important • maximum de 16 processeurs (systèmes Linux) • calculs rapides • accès facile à l’application et à la mémoire Architecture en clusters • utilisation de machines du réseau • coût de mise en œuvre relativement abordable • architecture client serveur difficile à mettre en place • nécessite une bande passante importante Cédric LHERM Ingénieurs 2000 5ème année

  9. Architecture multiprocesseurs Concepts : • la mémoire physique est accessible depuis tous les microprocesseurs • le code source résidant en mémoire est lui aussi visible par tous les microprocesseurs • le noyau se charge de répartir les calculs importants (et prévus à cet effet) entre les processeurs Cédric LHERM Ingénieurs 2000 5ème année

  10. Exemple d’architecture multiprocesseurs Répartition de l’application Code résident dans la mémoire commune aux trois processeurs CPU 1 CPU 2 CPU 3 Mémoire Cédric LHERM Ingénieurs 2000 5ème année

  11. Architecture multiprocesseurs Bilan : • mise en place aisée • coût important • limites de développement • problème de redondance • nécessite du code écrit pour être exécuté sur plusieurs processeurs en parallèle • accès à la mémoire • accès au code Cédric LHERM Ingénieurs 2000 5ème année

  12. Architecture en clusters Concepts : • partage de l’exécution d’une application entre plusieurs machine d’un réseau • redondance • haute disponibilité • accélération des temps d’exécution façon significative • problème de charge réseau : échange de messages • temps de latence Cédric LHERM Ingénieurs 2000 5ème année

  13. CPU CPU CPU Mémoire Mémoire Mémoire Architecture en clusters Application Echange de messages Node Server Node Node Cédric LHERM Ingénieurs 2000 5ème année

  14. Comment ça marche ? Algorithmes utilisés : • méthode de partage du calcul des boucles d’exécution (for, while) • délégation des calculs • redondance • échange de messages Cédric LHERM Ingénieurs 2000 5ème année

  15. Partage du calcul des boucles Exemple de Programme C séquentiel : int sum = 0; for (i = 0; i < 1000; i++) { sum += i * 50; } Cédric LHERM Ingénieurs 2000 5ème année

  16. Partage du calcul des boucles Programme partagé dans un cluster de deux machines : Cédric LHERM Ingénieurs 2000 5ème année

  17. Partage du calcul des boucles Bilan : • nécessite un code approprié • écriture des sources plus difficiles • langages supportés : C et Fortran • partage d’information sur le réseau • l’application « fork » un processus d’une machine à une autre machine du réseau Cédric LHERM Ingénieurs 2000 5ème année

  18. Émission de messages Concepts : • application client / serveur • émission des informations propres à un processus vers la node cliente afin que cette dernière puisse exécuter le code (« fork » sur le réseau ) • librairies portables • bande passante importante Cédric LHERM Ingénieurs 2000 5ème année

  19. Émission de messages Librairies permettant de passer des messages : • PVM (Parallel Virtual Machine) • MPI (Message Passing Interface) • AFAPI (Aggregate Function API) Cédric LHERM Ingénieurs 2000 5ème année

  20. PVM (Parallel Virtual Machine) • Passage de messages • Librairie libre de droits • Portable • Implémentée dans les couches supérieures du modèle OSI (au dessus des sockets) • Réseaux hétérogènes Cédric LHERM Ingénieurs 2000 5ème année

  21. MPI (Message Passing Interface) • Nouveau standard dans les librairies de passage de messages • Programmation simplifiée • Différentes implémentations : • LAM (Local Area Multicomputer) MPI 1.1 • MPICH (MPI CHameleon) MPI 1.1 • AFMPI (Aggregate Function MPI) MPI 2.0 Cédric LHERM Ingénieurs 2000 5ème année

  22. AFAPI (Aggregate Function API) • Normalisation de la librairie PAPERS (Purdue’s Adapter for Parallel Execution and Rapid Synchronisation) • Proche du matériel • Rapide Cédric LHERM Ingénieurs 2000 5ème année

  23. Émission de messages Bilan : • protocole haut niveau de communication client / serveur afin d’implémenter les systèmes en cluster • portable et fonctionnant sur des systèmes hétérogènes • gourmand en bande passante (entre 20 et 50 Mbits par seconde) • demande de faible temps de latence (moins de 200 ms) Cédric LHERM Ingénieurs 2000 5ème année

  24. Exemples d’utilisation Earth Simulator • Architecture NEC SX • 640 nodes • 8 processeurs par node • 16 Gb de mémoire par node • 5120 processeurs • 40 téra instructions par seconde • 10 téra octets de mémoire • 700 téra octets de disque dur Cédric LHERM Ingénieurs 2000 5ème année

  25. Exemples d’utilisation ASCI White • processeur IBM RS6000 SP Power3 à 375 MHz • 12,3 trillions d’opérations par seconde • 8192 processeurs • 6 téra octets de mémoire vive Cédric LHERM Ingénieurs 2000 5ème année

  26. 2ème partie Les clusters de fichiers Cédric LHERM Ingénieurs 2000 5ème année

  27. Les clusters de fichiers • mise en place de sauvegardes fiables et de gros volume • sécurité • redondance • multi-sites • pratiques • facilement administrables Cédric LHERM Ingénieurs 2000 5ème année

  28. Les clusters de fichiers Exemple MOPI (Mosix) Principes : • partage de fichiers entre plusieurs nodes • fragments de données indépendants • stockages de fichiers de grande taille • redondance • accès transparent aux fichiers Cédric LHERM Ingénieurs 2000 5ème année

  29. Les clusters de fichiers MFS : Mosix File System Méthode d’accès aux fichiers : • un ou plusieurs serveurs dédiés • Meta Manager (MM) dont le rôle est de gérer les fichiers, les segments mémoire, les suppressions, … • Migration des processus Cédric LHERM Ingénieurs 2000 5ème année

  30. Structure des fichiers MetaUnit : contrôle les inodes et les emplacements des fichiers DataStructure : Plus petite unité de stockage (1 Mb à 4 Gb) autonome Cédric LHERM Ingénieurs 2000 5ème année

  31. Composants MOPI Niveau utilisateur et application Démons Interface shell Niveau système Cédric LHERM Ingénieurs 2000 5ème année

  32. Statistiques Comparaison MFS / NFS : • 60 stations de travail • Architecture Pentium III 1,3 GHz 512 Mo disque dur, 20 Go disque dur. Cédric LHERM Ingénieurs 2000 5ème année

  33. Conclusion clusters de fichiers • stockage massif de données • haute disponibilité • sécurité • rapidité Cédric LHERM Ingénieurs 2000 5ème année

  34. Quelques références Sous Linux : • beowolf : • Optimisation du taux d’occupation de la bande passante • Nombre important de nodes sur le réseau local • mosix : • Nécessite de patcher le noyau linux • Load balancing dynamique Cédric LHERM Ingénieurs 2000 5ème année

  35. Conclusion Le clustering est particulièrement adapté pour les applications industrielles nécessitant des temps de calculs importants : génome, calculs d’images 3D, … Il est également utile pour le stockage sécurisé d’un volume important de données. Ces points font des clusters un axe de développement très prisé par le monde industriels. Cédric LHERM Ingénieurs 2000 5ème année

More Related