MENU
THEMES

Architecture GRID

Publié le: 10/12/2007  |  Par: Guideinformatique  

L'architecture GRID est utilisée pour gérer la répartition des calculs sur plusieurs machines.
Le résultat ? Plus de puissance disponible, des calculs plus rapides.
Explication.

Principes du Grid

Plusieurs motifs poussent à la mise en oeuvre du Grid :

  • l'optimisation des moyens de calcul existants permettant de différer les investissements en nouveaux moyens,
  • la recherche d'augmentation de puissance et de vitesse de traitement sans se lancer dans des investissements de type HPC beaucoup plus lourds,
  • la rationalisation des data centers : moins d'espace occupé et moins de consommation d'énergie (on parle parfois de green grid) 
Maturité IT autour du Grid

La mise en oeuvre du Grid dans l'entreprise suit 4 niveaux de maturité :

  • on répond à la demande d'une ligne métier qui a besoin de performances,
  • on réplique l'opération pour des applications similaires au sein d'autres lignes métiers (en silo),
  • on met les ressources en commun dans un pool et on définit des règles de partage des ressources,
  • on étend le principes à d'autres types d'applicatifs qui ont besoin de ressources.

Le résultat final est la fourniture de ressources aux applications sous forme d'une prestation de service interne avec définition de SLA (Service Level Agreement).

Comment fonctionne le Grid ?

Sur chaque machine intégrée dans le Grid, on positionne un agent chargé de recenser et gérer la ressource locale mise au pot commun.

Le Grid ne rajoute pas une couche logicielle supplémentaire entre l'application et le système , mais seulement des moyens d'accès aux ressources.
Il n'introduit donc pas d'overhead au niveau des calculs eux-mêmes, mais seulement au moment de l'initialisation de ceux-ci.
Pour qu'une application puisse exploiter la puissance de plusieurs machines en même temps, il faut "gridifier" les applications. C'est-à-dire que le développeur doit organiser son application, répartir en lots les traitements et les données.
Le Grid effectue des traitements parallèles.
Par exemple, pour un calcul de risques financier, on va découper le calcul en 100 ou 1000 sous-calculs correspondant chacun à un risque.
Le découpage peut se matérialiser soit par le lancement d'autant d'exécutables que de traitements individuels (modèle batch), soit par l'envoi de messages à des exécutables persistants (modèle orienté service). 

Qui utilise le grid ?

Au delà de phénomènes médiatisés comme des calculs sur le génome humain réalisés sur des milliers PC de particuliers volontaires ou la mise en commun possible de consoles de jeu PSP, il y a 2 utilisations pragmatiques :

  • les calculs pour la recherche scientifique qui nécessite de fortes puissances (voir notre dossier sur le calcul scientifique et HPC).
  • les entreprises de l'industrie et de la finance qui font désormais un large appel à la simulation.

Dans ce dernier cas, les banques et les sociétés d'assurance ont besoin de fortes puissances pour effectuer rapidement des calculs de risque financier.
Pour cela, elles peuvent employer des milliers de serveurs blades rassemblés dans un Grid. Le fameux algorithme Monte-Carlo permet par exemple de simuler l'évolution d'un système en procédant par tirages au sort des possibilités. Lorsque l'on multiplie le nombre de tirages on obtient une évaluation de plus en plus fine de ce qui va se passer.
En ce qui concerne l'industrie, les concepteurs dans l'électronique, l'automobile, l'aviation, etc... peuvent grâce au Grid se partager d'importantes quantités de ressources banalisées pour exécuter leurs simulations, sans avoir à se préoccuper des modalités précises d'accès à ces ressources.

Grid ou HPC ?

On oppose souvent Grid et supercalculateurs HPC. Dans la réalité, les 2 architectures se combinent régulièrement. Grid et HPC sont d'ailleurs désormais souvent fabriqués avec les mêmes processeurs (COTS). Et les supercalculateurs sont souvent eux-mêmes intégrés dans un Grid. 


Ci-dessus, Tera-10, le supercalculateur du CEA.
 
L'une des caractéristiques majeures du supercalculateur HPC, c'est la vitesse d'échange des données entre les différents noeuds de calcul, tandis que dans le Grid, les données sont échangées au rythme beaucoup plus lent des réseaux LAN ou WAN.
Le supercalculateur HPC reste donc indispensable pour des calculs interdépendants, comme des calculs de déformation où chaque élément d'un matériau subit les interactions calculées des éléments voisins (calcul des structures des avions, météorologie, étude des séismes....).
  
Ce document a été réalisé grâce à l'aide de :
- Emmanuel Lecerf (Technical Manager Financial Services, SEMEA & CE) chez Platform Computing,
- Robert Lurin (Technical Manager HPC, SEMEA) chez Platform Computing

Réagir à cet article