Cluster High Performance Computing Dr. Andreas Koch, Cluster Specialist
TABLE DES MATIÈRES 1 RÉSUMÉ... 3 2 INTRODUCTION... 4 3 STRUCTURE D UN CLUSTER HPC... 6 3.1 INTRODUCTION... 6 3.2 MONTAGE SIMPLE... 6 3.3 LES TYPES D EXPLOITATION... 7 3.3.1 Gestion de batchs...7 3.3.2 Exploitation parallèle...7 3.4 GESTION DES TÂCHES ET CONTRÔLE DES NOEUDS... 8 3.5 LES DIFFÉRENTS TYPES D INSTALLATION... 8 3.6 LES DIFFÉRENTS TYPES DE RÉSEAUX...10 3.7 TAILLE DU FRONTEND...12 3.8 ARCHITECTURE DE NOEUDS OPTIMALE...13 3.9 LES DIFFÉRENTES TECHNIQUES D INSTALLATION...13 4 CARACTÉRISTIQUES D APPROVISIONNEMENT...15 4.1 L APPEL D OFFRE...15 4.2 ENTRETIEN...15 4.3 EXTENSION DU CLUSTER...15 5 EXEMPLES D INTÉGRATION...17 6 CONCLUSION ET PERSPECTIVES...20 Ce document appartient à la propriété de transtec AG. www.transtec.de Il ne peut être en aucun cas et sans accord préalable de son auteur, copié, publié ou encore polycopié sous quelque forme que ce soit. Toutes les informations contenues dans ce document ont été rassemblées avec le plus grand soin. Cependant, il n est pas exclu que certaines informations soient erronées. transtec AG et l auteur de ce document ne peuvent être tenus responsables pour d éventuelles erreurs et les conséquences qui pourraient en découler. Dans la présente, la dénomination de logiciels et matériel informatique sont indiqués par des marques déposées. Ils sont utilisés sans accord préalable de l entreprise. L utilisation de marques déposées dans les pages suivantes ne signifie en aucun cas l acceptation d une utilisation libre de ces noms, dans le respect de la protection des marques déposées. transtec AG page 2/2
1 RÉSUMÉ Ce rapport vous donne un aperçu des différents systèmes de clusters High Performance Computing (HPC). Il vous explique les principes et les différentes possibilités d une installation ainsi que ses composants, et l influence de chacun d eux dans l infrastructure informatique. De plus, nous vous indiquerons quelques données sur le rapport prix/performance. Afin de faciliter l acquisition à l utilisateur, nous reverrons tous les aspects à prendre en compte pour évaluer la taille de l infrastructure et nous vous expliquerons les bases pour une introduction réussie d un cluster HPC. transtec AG page 3/3
2 INTRODUCTION La question de l intégration d un supercalculateur se pose en général pour les trois raisons suivantes : Le problème ne peut être résolu sur un système unique à cause de sa complexité. L utilisateur souhaite obtenir un résultat plus précis L utilisateur souhaite gagner du temps et obtenir des résultats plus rapides. Dans le domaine du HPC, les solutions de mainframe sont les plus courantes, que ce soit des systèmes SMP (symmetric multi-processor) ou MPP (massively parallel processing). Ceux-ci sont constitués avec du matériel informatique de série limitée et incompatible, optimisé pour les besoins de l installation et disponible en général à partir d un seul fournisseur. Typiquement, le «Big-Iron» est une architecture à mémoire partagée, et tous les processeurs ont accès à une mémoire principale commune. Le matériel informatique est flexible et peut soutenir divers systèmes d exploitation. Un des avantages est la transparence de la charge de répartition, qui distribue de manière dynamique les ressources sans l intervention d un utilisateur. L utilisateur ne considère pas le mainframe dans son ensemble, mais simplement la tâche en cours. Au contraire, une solution de cluster HPC est considérée comme une multiplicité de systèmes informatiques usuels, qui n ont pas été installés dans un but particulier (on parle de matériel informatique COTS common-off-the-shelf). L origine de cette idée remonte aux recherches de Thomas Sterling et de Don Becker en 1994. Ces deux employés du centre d excellence de la NASA cherchaient des alternatives pour atteindre une performance informatique élevée, et ont suivi la stratégie «divide and conquer». Le résultat de leurs recherches a donné naissance au cluster Beowulf. Généralement, ce sont des structures de mémoire distribuée, à partir desquelles la mémoire principale décentralisée se trouve dans les nœuds individuels et peut être interrogée à partir du CPU local. Le cluster est géré au minimum par un système d administration, et les performances du système sont mis à la disposition de l utilisateur à l aide d un programme additionnel. Les avantages d une solution cluster par rapport à la technique d un mainframe sont les suivantes : Une amélioration considérable du rapport prix/performance Une très bonne modularité Une gestion simplifiée Des coûts de services peu élevés le matériel informatique du cluster peut être réutilisé à d autres fins transtec AG page 4/4
La sécurité élevée en cas de panne est au moins aussi bonne que pour les mainframes. Grâce aux modules d instructions et exécutions doubles, le résultat est calculé deux fois de manière totalement indépendante. En plus du très bon rapport prix/performance, la possibilité d extension très simple est un argument classique pour les budgets de départ plutôt minimes. L administrateur peut allouer chaque année une partie de son budget pour acheter le matériel supplémentaire, sans avoir à déduire des investissements sur du matériel plus ancien. La part de marché des clusters HPC dans le domaine des supercalculateurs augmente de manière continue. Par exemple, la part des clusters dans la liste du top 500 des calculateurs les plus puissants au monde représentait 2% seulement au premier semestre 2000 alors qu elle se situait au premier semestre 2003 autour des 30%. transtec AG page 5/5
3 STRUCTURE D UN CLUSTER HPC 3.1 Introduction Du point de vue des utilisateurs, un cluster représente une interface de logiciels, qui permet de répartir les applications sur les différentes ressources. Ces programmes, appelés également middleware, se reposent sur un système d exploitation. Les tâches du calculateur sont reparties sur les différents processeurs sur le réseau dédié. Nous allons étudier dans ce document tous les aspects à prendre en compte lors de l acquisition d un cluster. Schéma 1: Montage classique d un système de cluster HPC 3.2 Montage simple Un cluster HPC est en principe composé d une multitude de noeuds et d un ou plusieurs calculateurs reliés. En général, le matériel informatique nécessaire est bon marché et provient du segment IA32, aussi connu dans le domaine des PC (Personal Computer). Le nombre de nœuds varie en règle générale entre 8 et 256 nœuds, mais certains clusters en possèdent des milliers. Le centre d accès est qualifié de frontend, serveur de nœuds ou encore nœud principal (Head Node). Les nœuds de calculs sont des nœuds informatiques (Compute Nodes). transtec AG page 6/6
Dans certains cas particuliers, le centre de nœuds peut prendre le rôle du frontend («entraîneur de jeux»). Cependant, cette situation n est à conseiller que dans de petites installations, et le cluster ne devrait être utilisé que dans des gestions de batchs (voir cidessous). 3.3 Les types d exploitation Un cluster peut être installé en batch ou dans une exploitation parallèle. 3.3.1 Gestion de batchs Dans le premier cas, tous les nœuds fonctionnent à partir d un programme unique. Différentes tâches ou données sont livrées vers les nœuds à partir du frontend. Une fois exécutés, les résultats sont envoyés au frontend, qui va les archiver en ordre correct suite à un examen rapide de plausibilité. Dès que le résultat est livré, la tâche suivante est distribuée. Un exemple de ces modes d exploitation est le calcul des séquences de film (Rendering Farm). Le calcul d images qui disposent du même raytracing (technique de rendu qui calcule l image d une scène en simulant le déplacement des rayons lumineux) s effectue sur tous les nœuds, mais chaque nœud individuel calcule une autre partie d image. La durée du calcul pour une image dépend du contenu de l information, et le résultat n est pas forcément envoyé dans le bon ordre. Le classement et la sauvegarde dans un ordre correct sont pris en charge par le frontend. 3.3.2 Exploitation parallèle Dans une exploitation parallèle, tous les nœuds calculent en même temps un résultat commun. Pour reprendre l exemple du raytracing, on pourrait imaginer que dans un cluster à 4 nœuds, le premier calcule le contenu du quart de l image en haut à gauche, le deuxième le quart de l image en haut à droite, etc. Dans ce cas, plusieurs surfaces identiques sont calculées par différents nœuds en même temps et une harmonisation est nécessaire afin de synchroniser les données. Faute de quoi, dans l exemple ci-dessus, on verrait dans la transmission une partie d image après l autre, ce qui créerait des cicatrices. L installation d un cluster en exploitation parallèle requiert des conditions techniques particulières, qui doivent être détaillées. Vous trouverez des exemples supplémentaires à propos de l installation dans le chapitre 4. Une amélioration de la performance significative dans ces deux types d exploitation est prévue avec l installation de compilateurs spéciaux. Dans ce cas, les performances de plusieurs alternatives de compilateurs doivent être comparées. Comme possibilité, on peut envisager l installation du compilateur choisi dans l optimisation de l architecture et provenant du fabricant de processeurs. transtec AG page 7/7
3.4 Gestion des tâches et contrôle des noeuds Le calculateur central calcule l exploitation des noeuds. C est le seul à avoir des contacts directs avec le reste du réseau. L utilisateur se connecte uniquement au frontend, en général en remote. Les centres de nœuds vont attribuer des adresses IP du domaine privé. L accès contrôlé est possible pour l administrateur uniquement à partir du frontend. Un système de files d attentes réglemente l arrivée des tâches vers les nœuds. La demande de l utilisateur est inscrite sur la liste d attente et est traitée par le système automatiquement. L administrateur peut attribuer des préférences. Par exemple, l utilisateur peut limiter le nombre de nœuds. Il peut aussi accorder des périodes de temps, dans lesquelles des tâches interactives sont réservées. Comme systèmes typiques de files d attentes, on trouve OpenPBS ou Sun GridEngine. 1 Si un noeud tombe en panne, la dernière demande à traiter sera envoyée sur un autre noeud et l administrateur recevra par email un avertissement à propos de la panne. Les paramètres d exploitation des nœuds comme la température, le nombre de rotations des ventilateurs ou les tensions du système sont traités à l aide de modules comme LMSensors. Le cas échéant, des mesures préventives peuvent être prises. 3.5 Les différents types d installation Plusieurs possibilités peuvent être choisies pour l installation et la configuration de systèmes d exploitation sur un cluster. Ces choix sont influencés par le degré d information de l administrateur ou par la flexibilité de l utilisation. Dans tous les cas, les adresses MAC des nœuds disponibles sont déposées pour la détermination des ressources dans un tableau Look up dans le frontend. La version classique est l installation locale du système d exploitation dans le frontend mais aussi dans les nœuds. L utilisation est relativement simple et de grandes connaissances ne sont pas nécessaires. L inconvénient de cette solution est l énorme administration qu elle représente. Par exemple, dans le cadre de la maintenance du système d exploitation, pour la mise à jour (kernel update), il faut procéder à une mise à jour de chacun des nœuds. 1 En comparaison, le terme Gridcomputing se réfère à un calculateur décentralisé, et réparti sur un système d emplacement unique ou un centre informatique complet, mis à disposition des utilisateurs lors de temps creux de fonctionnement. Dans l ensemble, ces clusters peuvent aussi atteindre une grande valeur. Un exemple type est le projet Seti@home. Avec le programme Boinc (Berkerly Open Infrastructure for Networking Computing), les ressources sont entièrement utilisées. transtec AG page 8/8
Le concept du Boot-from-LAN peut être une solution. Dans ce cas, les images correspondantes sont enregistrées sur le frontend, qui les charge au démarrage sur les cartes réseau. Le nœud doit seulement être compatible PXE (PXE = Pre-Execution Environment). Le disque dur en place sert uniquement à livrer les résultats intermédiaires. Dans ce cas, un disque dur IDE de 40 Go est suffisant. Si les performances d exportation doivent être importantes (Scratchen), on peut envisager deux disques durs dans un RAID 0, ou encore un disque dur SCSI rapide. Une optimisation supplémentaire de l installation est possible avec un classement permanent du système d exploitation après le redémarrage en RAM. Dans ce cas, le trafic inutile sur le réseau est réduit, ce qui pourrait provoquer une surcharge du LAN. Dans la pratique, on peut renoncer facilement à un CDROM ou à un FDD, même si on donnait la priorité à une installation locale sur les nœuds. Chaque changement effectué sur le logiciel est facile à intégrer sur les lecteurs correspondant au frontend. Le contrôle du statut des nœuds sur un moniteur, connecté généralement sur un KVM (Keyboard- Video-Mouse), et par conséquent à la carte graphique, n est pas nécessaire. Il existe des solutions alternatives bon marché avec une interface RS 232, soit avec un serveur de terminal, soit à l aide de câbles d un modem zéro. En règle générale, les clusters fonctionnent sous Linux. L installation avec Windows 2000 Server est inhabituelle et nécessite une extension MPI particulière (pour comparer voir www.wmpi.com). Microsoft commence à s intéresser au cluster HPC et a déjà amélioré la version Windows 2003 Server dans le domaine des HPC. Le choix du distributeur Linux dépend entièrement des préférences de l administrateur. RedHat détient une grande part de marché, SuSe est leader au niveau européen et largement distribué, et Debian est plus sûr avec la livraison de Kernel. Les économies qui peuvent être réalisées avec l installation d un cluster à la place d un mainframe, proviennent essentiellement du système d exploitation bien meilleur marché. Les coûts d une version RedHat Linux pour un IBM S/390 représentent environ 20.000 $ par CPU (sans les coûts d installation). D un autre côté, un RedHat standard coûte moins de 200 $. Pour le système de base pour cluster, des paquets Open Source sont disponibles gratuitement. Mais, il existe aussi de nombreux programmes en vente sur le marché. Les différents types de logiciels pour une installation de cluster, vont faire l objet d un rapport séparé. transtec AG page 9/9
3.6 Les différents types de réseaux Le réseau, qui relie les différents noeuds individuels, est déterminé par l application qui fonctionne sur le cluster. Si l échange de données est faible, une connexion Fast Ethernet (largeur de bande max 100 Mbit/s) est suffisante. Cet exemple est valable, par exemple, dans le cas d un programme qui enverrait vers les nœuds une série de paramètres de démarrage dans un fonctionnement en batch, et qui retournerait après quelques minutes ou quelques heures un résultat d une taille de plusieurs pages A4. Le risque d une surcharge du réseau sur une longue période est qu un nœud ne pourra ne pas recevoir de nouvelles tâches et restera inutilisé. Mais, ce risque est éliminé si le nombre de nœuds est important. Ce type de structure s appelle aussi structure à gros grains. Si cette condition ne peut être garantie, ou si le cluster doit être utilisé régulièrement dans une exploitation parallèle, il vaut mieux envisager un réseau d au moins un Gigabit Ethernet (1 Gbit/s). Le prix de cette technologie est relativement faible et une adaptation du cluster est à prendre en compte. Par ailleurs, outre le matériel informatique, l échange de données joue un rôle important dans le protocole en place. L Ethernet avec une connexion TCP/IP est la solution classique la plus répandue et parfaitement standardisée. Mais, la latence reste la même autour de 80 µs. Avec des modifications dans le TCP/IP, on peut atteindre une latence de moins de 30 µs dans le Gigabit Ethernet. L intégration d un autre protocole implique cependant une nouvelle compilation du programme, à prendre en compte dans les bibliothèques connectées entre elles. Une connexion Myrinet n est pas forcément plus rapide à cause de la largeur de bande de 2 Gbit/s. Avec des temps de latence réduits et l utilisation d un protocole GM (Grand Message) parfaitement adapté au matériel informatique, le transfert de données pour de petits blocs est plus important. Comme point de repère, les coûts d une connexion Myrinet sont de l ordre des prix des nœuds. Des performances réseaux comparables sont aussi possibles avec une interface modulable cohérente (SCI) comme l adaptateur SCI de Dolphin. De même, la technique de connexion rapide avec l adaptateur de réseaux Quadrics QsNet, est installé, surtout dans des domaines de haute performance à cause de la latence réduite. Parmi les dix systèmes les plus rapides au monde, six d entre eux possèdent cette interface. transtec AG page 10/10
Interconnect Largeur de bande Coût par port Latence [µs] [MByte/s] Fast Ethernet 100Base-T 100 12 50 Gigabit Ethernet 1000Base-T 50 125 500 Myrinet 2000 7 250 2000 Dolphin SCI 5 250 1500 Quadrics QsNet 4 350 4500 InfiniBand 4x 6 850 2000 Tab. 1: Aperçu de la latence et de la largeur de bande pour des tailles de paquets similaires (64 Bytes pour la latence, 64 ko pour la largeur de bande). Les coûts des ports en comprennent les investissements pour le commutateur ainsi que le câblage. Ces prix vous donnent simplement une idée, ils ont été arrondis. À long terme, une amélioration du taux de transfert de mémoire est à prévoir. Pour éviter des goulets d étranglement dans le réseau avec un Dual Opteron ou un cluster Itanium, l installation d InfiniBand peut s avérer nécessaire. Le taux de transfert de données maximum correspond approximativement à 10 Gbit/s pour 4xInfiniBand, mais il devrait atteindre 30 Gbit/s avec 12x InfiniBand d ici la fin 2004. La latence ne pouvait plus être réduite pour les petits paquets. Avec de gros paquets, elle devrait être réduite de moitié par rapport aux meilleures performances actuellement atteintes. 2 La technologie de réseau à installer dépend de l application prévue. Ainsi, l acquisition du système par l administrateur doit être validée avec les utilisateurs. Si une application doit fonctionner en exploitation parallèle, il est important de savoir si celle-ci peut fonctionner avec une version précédente, si on peut acheter une version parallèle chez le fabricant de logiciel, ou quelles sont les conditions de fonctionnement d une application parallèle développée en interne. Les spécialistes du centre de compétence chez transtec sont là pour vous aider à répondre à ce genre de problématique. Une extension des nœuds pour augmenter la performance dans une exploitation parallèle s avère inefficace. Le Speedup, c est-à-dire l amélioration de la performance reste faible, mais cela dépend du degré de parallélisme.. Par exemple, un cluster de 10 nœuds qui détient une rapidité de neuf fois un nœud, atteint un Speedup de facteur 9. La même application avec une installation de 100 nœuds atteindrait une rapidité de 48 fois un nœud. L augmentation de la performance arrive à saturation, dans l exemple du schéma 2 (α, la portion de la part séquentielle de l application dans l exemple est de 1%). L administration des parts identiques pour tous les nœuds détermine la rapidité maximum qui peut être atteinte. 2 Dans certains domaines, cette technologie est déjà bien établie. Le leader sur le marché, Mellanox,a réalisé au 3 ème trimestre 2003 une livraison de 100.000 ports approximativement. transtec AG page 11/11
Schéma 2: Dépendance entre l augmentation de la performance et le nombre de nœuds où α=0,01 3.7 Taille du frontend Le rôle du frontend est l utilisation optimale des centres de nœuds, mais aussi l archivage des résultats. De ce fait, le système de stockage doit être au minimum d un RAID IDE de niveau 5. 3 Le frontend peut être sécurisé de manière différente contre une panne totale du système. Un disque dur de démarrage est à prévoir dans un RAID 1. Une solution de sauvegarde doit être rajoutée, lorsque ce service n est pas proposé dans l installation centrale d un centre informatique. En plus des blocs d alimentation redondants, un USV doit être pré-installé pour réduire le risque de pertes de données. Si le frontend tombe en panne, les nouvelles tâches ne seront plus attribuées et les résultats ne seront plus livrés par les nœuds. Ainsi, le cluster peut se trouver rapidement bloqué. Dans de grosses infrastructures, il peut être judicieux d installer le calculateur d accès comme cluster HA (Les clusters High Availability font l objet d un autre rapport). Si les deux systèmes sont actifs, les tâches peuvent être réparties de manière logique dans le cadre d un Load Balancing. Par exemple, on peut en installer un pour gérer le stockage et les utilisateurs. Il servirait de serveur NFS, disposerait d un firewall et représenterait le cluster sur internet. Le deuxième serait responsable pour les services 3 Le système RAID SCSI-to-IDE est une solution avantageuse. En utilisant 16 disques durs à 300 Go, il faut prévoir 4 To sur un RAID 5 redondant. transtec AG page 12/12
de réseau du cluster (DHCP, DNS, NTP, NIS), sauvegarderait la configuration de chaque nœud et contrôlerait l état d exploitation des nœuds informatiques. De même, il prendrait en compte l installation des programmes fonctionnant à partir du cluster. 3.8 Architecture de noeuds optimale Une autre problématique est l architecture optimale des processeurs pour les applications respectives. En général, l utilisateur a déjà fait des expériences sur des stations de travail individuelles. Les avantages et les inconvénients sur un cluster peuvent être transférés sur les nœuds installés de manière identique. Si aucune expérience n a été réalisée, il suffit d obtenir la connaissance grâce à une acquisition expérimentale. En effet, il est possible de tester des environnements Dual Athlon et Dual Xeon ainsi que des systèmes individuels P4/RIMM, des solutions Dual Opteron et Dual Itanium. Les clusters de test fournissent en général toutes les connections possibles. Ces connexions peuvent être activées facilement à l aide d un logiciel. Le cluster dispose au minimum de deux nœuds similaires. L objectif de cette enquête est de trouver le rapport prix/performance idéal pour l application. Le résultat peut aussi être vérifié à l aide d un configurateur de cluster sur une base mathématique. L externalisation des données sur le disque dur (swap) de la mémoire principale est à éviter impérativement. La mémoire de travail des nœuds doit toujours être d une taille suffisante. 3.9 Les différentes techniques d installation Des tours midi classiques ou des versions rack 19 peuvent être utilisées. L avantage des tours midi est leur prix avantageux. Si la place est disponible et si un système de refroidissement est en place, on peut les ranger sur de simples étagères. Si on choisit une solution 19, la densité du paquet d environ 0,5 CPU/1 U pour les tours midi sera augmentée à 2 CPU/1 U. Ainsi, lors de l installation du système de température, aussi pour les nœuds supérieurs, il faudra maintenir une température pouvant aller jusqu à 10 C pour les étagères ouvertes. Pour calculer la circulation d air nécessaire, on peut utiliser la formule suivante. Courant d air = 3* émission de chaleur des noeuds température de noeuds température d aspiration d air transtec AG page 13/13
Un augmentation de la densité est possible avec l utilisation d un système blade. Dans ce cas, on peut atteindre jusqu à 4 CPU/ 1U. 4 De plus, on peut ainsi améliorer les performances de refroidissement avec un montage perpendiculaire du blade. Avec l utilisation générale des éléments de l infrastructure centrale, un cluster basé sur un blade apporte une grande fiabilité et permet un plus grand nombre de nœuds qu une solution Rackmount classique de 19. La température du cluster ne doit pas être sous-évaluée. Il peut produire plusieurs kw d énergie et cette chaleur pourrait suffire pour chauffer une maison selon le dernier standard d énergie. 5 Ce système, adéquat pour le maintien à température d une série de boîtiers avec un standard d économie d énergie, est efficace pour une superficie inférieure à 1 m_. Pour une installation professionnelle, une climatisation suffisamment puissante est à prévoir. 4 Un exemple est le rack blade RLX de transtec 5 Pour les systèmes Dual Xeon en particulier, il faut prendre en compte la difference entre le mode Idle et la charge complète transtec AG page 14/14
4 CARACTERISTIQUES D APPROVISIONNEMENT 4.1 L appel d offre Un cluster devrait être considéré comme une solution, déjà dans la phase d acquisition. La livraison des nœuds, emballés un à un, est seulement recommandée à des utilisateurs confirmés. L appel d offre devrait aussi comprendre un test de durée d une semaine à la livraison, ainsi qu une livraison avec montage sur site et prise en main du système avec formation pour l utilisation. Un support pour l installation des applications sur le cluster peut aussi être prévu, idéalement avant le test de durée. 4.2 Entretien L entretien en cas de dommage est beaucoup plus facile pour l administrateur. Comme tous les nœuds sont en général similaires, on peut remédier à des problèmes simples, comme le changement d un ventilateur défectueux, d une mémoire, d un disque dur ou d un composant du réseau. Pour des problèmes plus importants, comme le remplacement d un nœud, on peut envisager un service express sur site. La panne d un nœud n a pas d impact lorsque le nombre de nœuds est important. Exception : certaines applications particulières nécessitent plusieurs nœuds standards (en général 8), pour fonctionner de manière efficace en système parallèle. 4.3 Extension du cluster Le gros avantage du High Performance Computers sur la base d un cluster est l extraordinaire modularité. Une amélioration de la performance peut être remise à plus tard sans trop de problèmes. Des nœuds supplémentaires ne doivent pas offrir nécessairement les mêmes performances. Dans un système en gestion de batchs, une augmentation du rendement natif est intégrée sans pertes. Dans un système d exploitation parallèle, un nœud plus rapide ne fonctionne pas à plein régime mais à une vitesse effective, adaptée au nœud le plus lent du système. Dans la pratique, l administrateur définit un sous-cluster, uniforme au niveau des performances. Il est important de penser lors de l installation de l infrastructure prévue, à une extension du nombre de nœuds dans l avenir. Elle est peut être prévue par exemple avec la réduction du nombre de nœuds et l acquisition de commutateurs modulables, qui peuvent être élargis plus tard avec une insertion supplémentaire, sans créer de goulet d étranglement dans le Backbone. transtec AG page 15/15
L amélioration des performances du réseau peut être effectuée plus tard, lorsque les emplacements sont déjà existants. Avec l installation d un cluster, il faut prendre en considération l augmentation du rendement, qui nécessite par exemple une carte réseau Myrinet. transtec AG page 16/16
5 EXEMPLES D INTEGRATION Les clusters HPC sont installés pour de nombreuses raisons. L installation classique pour un calcul de chiffres en système parallèle joue un rôle beaucoup moins important que ce que l on pourrait imaginer. La plupart des systèmes de clusters fonctionnent en gestion de batchs. On peut donc considérer qu un investissement dans un adaptateur de réseau onéreux est inutile, et qu une interface Gigabit sera uniquement nécessaire. De ce fait, l adaptation de l application sur une exploitation parallèle ne se fera pas. Ceci pourrait être très cher pour les programmes commerciaux, et, pour les applications développées en interne (code interne), uniquement possibles avec un gros budget. Les installations courantes d un cluster ou d un mainframe se font pour des applications complexes qui ont une séquence comme résultat. Dans la plupart des cas, les données séquentielles proposent après exécution, un résultat en trois dimensions avec le temps comme troisième dimension. Le développement ou la modification de la situation est documentée et la conclusion claire. Des exemples typiques sont : Simulation de crash tests Représentation de la déformation Calcul des courants Représentation des tourbillons Calcul des vibrations Analyse des propriétés des structures Analyse des duretés Examen d usures des matériaux Analyse des séismes Représentation des mouvements Calcul des trajets Interprétation des trajectoires par exemple Météorologie développement de la météo dans le temps Animations 3-D Représentation d objets comme les molécules Calculs astronomiques Simulation des développements de l espace Planification de constructions Visite virtuelle d une nouvelle construction Rendering Fabrication d une séquence de film Pour adapter une application dans une gestion de batchs, il suffit de subdiviser simplement le résultat en plusieurs images, qui sont ensuite rangées dans un ordre défini au préalable. En principe, les applications de logiciels s en chargent, car la rectification des images est un point essentiel de la programmation. Ainsi, de gros problèmes peuvent être répartis en plusieurs petites tâches faciles à réaliser. Si les résultats sont calculés par différents CPUs, cela n a aucune conséquence pour l application. transtec AG page 17/17
D autres applications pour lesquelles des problématiques sont calculées dans une boucle, ont pour objectif une représentation différente (stochastique). Dans ce cas, l utilisateur souhaite apporter une plus grande sécurité dans la fiabilité des résultats obtenus. Par exemple, un fabricant automobile qui simulerait un crash test à l aide d un logiciel, et trouverait un résultat différent à celui du test réel, devrait chercher la raison de cette différence. Une erreur dans le modèle mathématique pourrait être envisageable. Mais, on pourrait aussi se demander la production de la carrosserie est exactement la même pour la série de test et pour la série réelle. 6 Souvent, le problème se situe dans des paramètres expérimentaux qui ne peuvent être reproduits pour l expérience. Par exemple, la rapidité du choc peut s éloigner de la base de référence, ou l offset du choc sur la barrière de crash ne serait pas tout à fait le même. Dans ce cas, l administrateur va définir des paramètres de démarrage légèrement différents. On peut résoudre ainsi un plus grand nombre de problèmes. On obtient de cette façon une multitude de résultats similaires, qui concordent avec le test réel. Ci-dessous, vous trouverez d autres exemples qui peuvent être résolus dans une boucle et qui se prêtent bien à une gestion de batchs : Optimisation des pièces de montage Économie de matériel avec CAD/CAM Recherche médicale analyse de structure Technique de Gand Mapping DNA Économie et banques Datamining Sociétés d assurances analyse des risques Analyses scientifiques Simulations de Monte Carlo Jeux d échecs Variation des calculs Jusqu en mai 2003, environ 5.000 processeurs de clusters ont été installés dans l industrie allemande. Dans le schéma 2, vous trouverez une répartition des branches d activité. Le plus grand nombre de processeurs a été installé jusqu à présent dans l industrie automobile. 6 Dans l exemple utilisé, la tôle fabriquée à la main pourrait être trop fine transtec AG page 18/18
Installation de processeurs de clusters dans l'industrie allemande 0 200 400 600 800 1000 1200 1400 Industrie automobile 1258 Biologie industrie des puces Industrie aéronautique industrie automobile industrie automobile Fourn. Industrie automobile Industrie automobile Industrie automobile Biologie aéronotique- et espace Industrie des puces Industrie automobile Production Fourn. Industrie automobile Biologie Biologie Industrie des logiciels industrie des logiciels Industrie automobile 386 320 312 256 224 220 154 144 144 128 128 128 100 96 64 64 64 53 768 Schéma. 2: Analyse de marché Installation de processeurs de clusters HPC dans l industrie allemande, source : www.altreia.com transtec AG page 19/19
6 CONCLUSION ET PERSPECTIVES Les racines du cluster HPC proviennent du domaine de la science. La mise au point, la maintenance et le développement ont nécessité un engagement personnel régulier, ce qui était inacceptable pour des utilisateurs professionnels. Depuis, la technologie des clusters a évolué. Les systèmes ont déposé leurs marques et sont devenus fiables. Ils sont aujourd hui une alternative bon marché par rapport aux mainframes. Dans l industrie aussi, les solutions connaissent une large reconnaissance. Et, la technologie de cluster HPC permet souvent à l utilisateur d envisager l installation d un propre centre informatique, plutôt que de racheter le temps d utilisation d une installation externe. Grâce au développement de l architecture IA32, les installations Gflop sont devenues bon marché, et les systèmes Tflop sont accessibles. Les coûts par GigaFlop/s se situent aux alentours de 500. Une performance informatique du même ordre est 10 fois plus chère avec un mainframe. Bien que les installations soient devenues plus simples, le montage d un cluster nécessite beaucoup d expérience. Il faut une bonne connaissance des applications, ainsi qu une connaissance approfondie des réseaux et un bon savoir-faire de Linux. L optimisation de l utilisation exige un matériel informatique assez large. L objectif est d atteindre une charge du processeur maximale. Les processeurs 64 bit d AMD actuels, qui peuvent aussi être en code 32 bit, vont trouver une large utilisation dans les clusters. InfiniBand, la nouvelle technique de réseau rapide en standard ouvert, va devenir bientôt attrayante au niveau du prix et va permettre de réduire les goulets d étranglements avec Interconnect. Les développements futurs de Linux-Kernel et les nouveaux paquets basés sur l open Source vont encore améliorer l efficacité et élargir les champs d utilisation. Certaines différences existent encore avec les mainframes, comme les groupes d instructions et d exécutions doubles ou les processeurs de réserve en stand-by, mais, ces différences vont à l avenir s estomper car des solutions similaires vont être trouvées pour les clusters. Pour plus d informations sur les clusters, vous pouvez consulter les pages internet suivantes: www.transtec.de www.beowulf.org www.openclustergroup.org www.pccluster.org www.supercluster.org www.linuxhpc.org www.intel.com/ebusiness/trends/hpc.htm transtec AG page 20/20