51
Master 2 RFIA Grilles de Calcul Dr BENDELLA Fatima Maître de Conférences A, USTO-MB 1

Master 2 RFIAContenu du module Chapitre 1: Introduction au calcul à haut débit Architectures parallèles et distribuées Présentation des grilles et domaines d’application. Typologie

  • Upload
    others

  • View
    4

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Master 2 RFIAContenu du module Chapitre 1: Introduction au calcul à haut débit Architectures parallèles et distribuées Présentation des grilles et domaines d’application. Typologie

Master 2 RFIA

Grilles de Calcul

Dr BENDELLA Fatima

Maître de Conférences A, USTO-MB

1

Page 2: Master 2 RFIAContenu du module Chapitre 1: Introduction au calcul à haut débit Architectures parallèles et distribuées Présentation des grilles et domaines d’application. Typologie

Contenu du module

Chapitre 1: Introduction au calcul à haut débit

Architectures parallèles et distribuées

Présentation des grilles et domaines d’application.

Typologie des grilles.

Quelques exemples

Chapitre 2: Architecture d’une grille de calcul

2.1- Architecture en couches des grilles de calcul

2.2- Protocoles et algorithmes dédiés aux grilles de calcul

2.3- Middlewares (fonctionnalités, protocoles, quelques exemples)

Chapitre 3 : Architectures orientées services

3.1- Plates formes orientées services (exemples : OGSA, OGSI)

3.2- Services Web et langages: CORBA, SOAP, WSDL, etc.

Chapitre 4 : Grilles de calcul dédiées au calcul intensif de données

2

Page 3: Master 2 RFIAContenu du module Chapitre 1: Introduction au calcul à haut débit Architectures parallèles et distribuées Présentation des grilles et domaines d’application. Typologie

Références bibliographiques

I. Foster and C. Kesselman (Editors). The Grid: Blueprint for a New Computing

Infrastructure. Morgan Kaufmann Publisher Inc. 1999.

I. Foster and C. Kesselman (Editors). The Grid 2: Blueprint for a New Computing

Infrastructure. Morgan Kaufmann Publisher Inc. 2003.

B. Sotomayor and L. Childers. Globus Toolkit 4: Programming Java services.

Morgan kaufmann, 2005.

3

Page 4: Master 2 RFIAContenu du module Chapitre 1: Introduction au calcul à haut débit Architectures parallèles et distribuées Présentation des grilles et domaines d’application. Typologie

Modes d’Évaluation

TP :

Exposés

Examen !

4

Page 5: Master 2 RFIAContenu du module Chapitre 1: Introduction au calcul à haut débit Architectures parallèles et distribuées Présentation des grilles et domaines d’application. Typologie

Chapitre 1 Introduction au calcul à haut débit

Les scientifiques et plus exactement les informaticiens sont les plus gros

consommateurs de puissance de calcul.

? Exigence de machines performantes

Ces exigences ont donné lieu à l’apparition de calcul de haute performance qui a pour but de la résolution de ces problèmes ( expériences scientifiques, simulations, analyse des signaux…) nécessitant une grande quantité de ressources (puissance de CPU, espace de stockage…)

Ce type de calcul a été implémenté sur des supercalculateurs et des machines massivement parallèles.

Mais le développement des réseaux haut débit a permis à l’idée de répartir ces applications sur plusieurs machines de devenir une réalité, ce qui a donné lieu à l’émergence des grappes de machines puis des grilles de calcul.

5

Page 6: Master 2 RFIAContenu du module Chapitre 1: Introduction au calcul à haut débit Architectures parallèles et distribuées Présentation des grilles et domaines d’application. Typologie

Chronologie

Les années 60 Distribution des tâches sur plusieurs machines

Milieu des années 80 Naissance des machines parallèles et des

supercalculateurs

Mais : ces méthodes étant très coûteuses

Début des années 90 le principe du "downsizing" a commencé à être

sérieusement développé, conduisant aux calculs dits distribués

Mais : Années 2000 elles ont commencé à atteindre leurs limites

Et depuis d’autres solutions telles que les grilles de calcul ont vu le jour.

6

Page 7: Master 2 RFIAContenu du module Chapitre 1: Introduction au calcul à haut débit Architectures parallèles et distribuées Présentation des grilles et domaines d’application. Typologie

Algorithmes parallèles

(1)

Modèles de calcul parallèle :

Algorithme ? Un flot d’instructions + un flot de données

Il existe 4 modèles de calcul selon qu’il y ait un ou plusieurs flots.

i. SISD : Single Instruction Single Data : Le modèle de Von Neumann (Modèle

séquentiel classique)

un flot d’instructions

un flot de données

Unité de Contrôle

Processeur

Mémoire

7

Page 8: Master 2 RFIAContenu du module Chapitre 1: Introduction au calcul à haut débit Architectures parallèles et distribuées Présentation des grilles et domaines d’application. Typologie

Algorithmes parallèles

(2)

ii. MISD : Multiple Instruction, Single Data : il existe plusieurs flots d’instructions agissant

sur un seul flot de données N processeurs partageant une unique mémoire (N>1).

Principe : à chaque étape (synchronisation) une donnée est traitée en // par les N

processeurs qui exécutent chacun une instruction (flot d’instructions) spécifique.

Problème ? Pas d’implémentation pratique.

N flots d’instructions

1 flot de données

UC1

P1

Mémoire

PN

UCN

8

Page 9: Master 2 RFIAContenu du module Chapitre 1: Introduction au calcul à haut débit Architectures parallèles et distribuées Présentation des grilles et domaines d’application. Typologie

Algorithmes parallèles

(3)

iii. SIMD : Single Instruction, Multiple Data, N processeurs (tous identiques) ayant

chacun une mémoire locale ou l’on peut stocker des données et des instructions.

1 flot d’instructions

N flots de données

UC

P1+M1 Pn+Mn

Interface : Echange inter processeur

9

Page 10: Master 2 RFIAContenu du module Chapitre 1: Introduction au calcul à haut débit Architectures parallèles et distribuées Présentation des grilles et domaines d’application. Typologie

Algorithmes parallèles

(4)

Principe : - Tous les processeurs exécutent la même instruction (même programme)

stocké en mémoire locale sur les données différentes

- Les processeurs fonctionnent de façon synchrone.

- Les instructions peuvent être simples ou complexes.

Avantage : efficace : si on a un flot régulier sur des données régulières auxquelles on

accède de manière prévisible.

Problème : souvent les processeurs doivent communiquer pour s’échanger des

résultats intermédiaires une coordination des activités (mémoire partagée,

réseaux d’interconnexion).

• Mémoire partagée (Shared Memory : SM) : représente le modèle PRAM (Parallèle

Random Access Machine), Les N processeurs utilisent un SM pour échanger des

données une étape élémentaire de complexité. Au fil du temps, les N

processeurs vont accéder en lecture/écriture en SM Problème de

concurrence d’accès.

10

Page 11: Master 2 RFIAContenu du module Chapitre 1: Introduction au calcul à haut débit Architectures parallèles et distribuées Présentation des grilles et domaines d’application. Typologie

Algorithmes parallèles

(5)

4 modèles de concurrence

EREW CREW ERCW CRCW

(Exclusive Read (Concurrent Read (Exclusive Read (Concurrent Read

Exclusive Write) Exclusive Write) Concurrent Write) Concurrent Write)

Problème ? Fixer une règle pour gérer la concurrence

11

Page 12: Master 2 RFIAContenu du module Chapitre 1: Introduction au calcul à haut débit Architectures parallèles et distribuées Présentation des grilles et domaines d’application. Typologie

Algorithmes parallèles

(6)

Le modèle à SM est théoriquement très puissant, mais peu réaliste .

Complexité de EREW est de (Log2(n)) sur N processeurs

Réseau de communication : - chaque processeur dispose d’une mémoire locale

- Chaque paire de processeurs est connecté par un lien bidirectionnel

- A chaque étape de calcul, un processeur Pi peut recevoir une donnée du Pj et

envoyer une donnée vers Pk.

- La complexité des communications dépend de la topologie du réseau

d’interconnexion (chaîne, grille 2D, arbre binaire)

iv. MIMD (Multiple Instruction, Multiple Data) : c’est le modèle le plus général

Il existe n processeurs, avec n flots d’instructions distincts et n flots de données

distincts.

12

Page 13: Master 2 RFIAContenu du module Chapitre 1: Introduction au calcul à haut débit Architectures parallèles et distribuées Présentation des grilles et domaines d’application. Typologie

Algorithmes parallèles

(7)

Les échanges inter-processeurs se font par SM ou par réseaux d’interconnexion .

13

Page 14: Master 2 RFIAContenu du module Chapitre 1: Introduction au calcul à haut débit Architectures parallèles et distribuées Présentation des grilles et domaines d’application. Typologie

Les grilles de calcul sont destinées en particulier aux communautés de recherche scientifique : un

des exemples des services de traitements de données rendus possibles par Internet est le Pair à

pair ( P2P) : qui permet à des utilisateurs dispersés de mettre à disposition une partie de la

puissance de leurs ordinateurs pour un traitement conjoint par l'intermédiaire d’Internet.

Les grilles se basent sur le principe du «partage de ressources et de la résolution de problèmes

de manière coordonnée au sein d’organisations virtuelles dynamiques et multi

institutionnelles» : le partage ne concerne pas uniquement le simple partage de fichiers mais

plutôt l’accès direct aux ordinateurs, logiciels, calculs, données et autres ressources.

Comment est ce partage ?

Il doit nécessairement être hautement contrôlé et les politiques qui en découlent clairement

définies.

C’est de cette manière que l’on peut définir les organisations virtuelles qui sont «un ensemble

de composants géographiquement et institutionnellement distribués qui permettent à des

groupes d’organisations ou d’individus de partager des ressources de manière contrôlée pour

que les différents membres puissent collaborer afin d’atteindre un but commun».

14

Page 15: Master 2 RFIAContenu du module Chapitre 1: Introduction au calcul à haut débit Architectures parallèles et distribuées Présentation des grilles et domaines d’application. Typologie

Historique

Le terme "grille" a été inventé dans le milieu des années 90 pour représenter une

infrastructure de traitement de données partagées pour la science et les technologies avancées.

Les origines du Grid Computing sont assez floues, probablement aux alentours des années 70.

Certains disent que le précurseur des grilles de calcul est la société Apple, plus précisément

l’entreprise NeXT avant qu’elle ne se fasse racheter par Apple, s’appuyant sur une idée de

Xerox.

Le docteur Richard CRANDALL (NeXT) serait le premier à avoir expérimenté le Grid

Computing, grâce à son programme de calcul parallèle distribué baptisé « Zilla » ; le

programme utilisait des machines chaînées entre elles pour des traitements mathématiques

complexes.

D'autres disent que l’idée serait venue de trois personnes, du Docteur en Mathématiques et en

Informatique Ian FOSTER (Directeur du Laboratoire National Argonne à Chicago aux Etats-

Unis), de Monsieur Carl KESSELMAN, chercheur en informatique à « The University of

Southern California » et de Steve TUECKE, ingénieur en informatique au Laboratoire

National Argonne. Ces trois personnes sont surnommées « Fathers of the Grid » (Les

Fondateurs du Grid), et sont à l’origine de l’une des plus importantes organisations pour le

Grid, « The Globus Alliance »

15

Page 16: Master 2 RFIAContenu du module Chapitre 1: Introduction au calcul à haut débit Architectures parallèles et distribuées Présentation des grilles et domaines d’application. Typologie

Le terme de Grid Computing fait son apparition au milieu des années 1990 et s’inspire de la grille

d’électricité (power grid).

Vers le début du 20ème siècle, la génération personnelle d’électricité était technologiquement

possible, et de nouveaux équipements utilisant la puissance électrique avaient déjà fait leur

apparition. La véritable révolution a nécessité la construction d’une grille électrique, c’est dire

la mise en place de réseaux de transmission et de distribution d’électricité.

Une grille de calcul fonctionne comme un réseau de distribution électrique : Celui-ci fournit à

chaque utilisateur toutes les ressources dont il a besoin au moyen de l’interface simplifiée

qu’est la prise de courant. Toute la complexité du réseau sous-jacent (de la centrale électrique

au particulier) est complètement cachée. De plus, l'utilisateur peut faire varier brutalement sa

consommation sans démarche préalable.

Dans une grille de calcul, puissance de calcul et capacité de stockage sont pratiquement illimitées,

puisque toutes les ressources de la grille peuvent être mobilisées en cas de besoin. Elle permet

de mettre sans effort en production intensive une application développée localement, et de

mieux partager les ressources disponibles (dans les centres de calcul et dans les laboratoires ou

bien dans les différents sites d'une entreprise).

16

Page 17: Master 2 RFIAContenu du module Chapitre 1: Introduction au calcul à haut débit Architectures parallèles et distribuées Présentation des grilles et domaines d’application. Typologie

Les principes communs

Le Grid Computing, également appelé calcul partagé ou calcul distribué, consiste à

exploiter pleinement les ressources de l'intégralité d'un parc informatique (serveurs

et PC), c'est une forme d'informatique distribuée, basée sur le partage dynamique

des ressources entre des participants, des organisations et des entreprises dans le but

de pouvoir les mutualiser, et faire ainsi exécuter des applications de calcul intensif

ou des traitements de très gros volumes de données.

Les grilles sont composées de ressources. Ces dernières sont potentiellement

qualifiées de :

17

Page 18: Master 2 RFIAContenu du module Chapitre 1: Introduction au calcul à haut débit Architectures parallèles et distribuées Présentation des grilles et domaines d’application. Typologie

a. Partagées : Elles sont mises à la disposition des différents consommateurs de la grille et

éventuellement pour différents usages applicatifs.

b. Distribuées : Elles sont situées dans des lieux géographiques différents.

c. Hétérogènes : Elles sont de toutes natures, différant par exemple par le système d'exploitation

ou le système de gestion des fichiers.

d. Coordonnées : Les ressources sont organisées, connectées et gérées en fonction de besoins

(objectifs) et contraintes (environnements). Ces dispositions sont souvent assurées par un ou

plusieurs ordonnanceurs.

e. Externalisées : Les ressources sont accessibles à la demande chez un fournisseur externe.

f. Non-contrôlées (ou autonomes) : Les ressources ne sont pas contrôlées par une unité

commune. Contrairement à un cluster, les ressources sont hors de la portée d'un moniteur de

contrôle.

18

Page 19: Master 2 RFIAContenu du module Chapitre 1: Introduction au calcul à haut débit Architectures parallèles et distribuées Présentation des grilles et domaines d’application. Typologie

Objectifs et problématique

Les raisons pour lesquelles les grilles de calcul ont vu le jour sont qu’elles permettent :

D’exploiter les ressources sous utilisées car il a été constaté que la plupart des PC et stations

de travail sont le plus souvent sous-exploités. Plusieurs études ont rapporté que l’utilisation

des moyens informatiques dans les environnements universitaires et commerciaux se situe

autour de 30%. Ce pourcentage est encore plus faible quant il s’agit d’ordinateurs à usage

domestique. Une grille permet de faire l’agrégation de ces ressources afin de les partager

entre les différents utilisateurs. Ceci permet aussi de faire du partage de charge entre les

ressources de la grille.

De fournir une importante capacité de calcul parallèle : Les grilles de calcul représentent une

alternative à l’utilisation des superordinateurs dans le calcul parallèle. Au lieu d’utiliser un

superordinateur pour faire tourner une application complexe (Climatologie, décryptage du

génome humain, etc…) en parallèle, ce sont plusieurs ordinateurs dispersés à travers le monde

et appartenant à une grille qui s’en chargent.

19

Page 20: Master 2 RFIAContenu du module Chapitre 1: Introduction au calcul à haut débit Architectures parallèles et distribuées Présentation des grilles et domaines d’application. Typologie

Une meilleure utilisation de certaines ressources car le fait de pouvoir accéder à des

ressources éloignées géographiquement et appartenant à des institutions différentes permet à

plusieurs utilisateurs à travers le monde d’exploiter à distance et sans avoir besoin d’en faire

l’acquisition, d’équipements de pointe.

La fiabilité et la disponibilité des services. Les ressources d’une grille sont dispersées en

nombre important donc en cas d’inaccessibilité de l’une ou plusieurs de ces ressources, le

service peut quand même être assuré en ayant recours à des ressources de rechange.

Les problématiques relevant du calcul sur grilles informatiques sont à priori bien connues. Il

s’agit essentiellement de faire communiquer et coopérer des matériels distants et hétérogènes

(par leurs modes de fonctionnement comme par leurs performances), de créer les logiciels

permettant de gérer et distribuer efficacement les ressources disponibles, et de concevoir des

outils de programmation adaptés au caractère distribué et parallèle de l’exécution.

20

Page 21: Master 2 RFIAContenu du module Chapitre 1: Introduction au calcul à haut débit Architectures parallèles et distribuées Présentation des grilles et domaines d’application. Typologie

Parmi les points essentiels pour une implantation efficace et générale des grilles de calculs, il

faudra notamment :

Assurer une communication efficace entre composants logiciels, notamment grâce à une

bonne compatibilité entre les aspects parallèle et distribué de l’exécution, et à l’adaptation des

protocoles de communication aux infrastructures hétérogènes et aux très hauts débits.

Optimiser la répartition des tâches, et ceci suivant différents modes, voire de manière

dynamique ; les exécutions pourront être équilibrées à priori ou non (par exemple la tendance

actuelle du calcul scientifique vers le multi-échelles et le multi-modèles auto adaptatif va dans

le sens d’un besoin de redéploiements dynamiques de l’exécution).

Développer des outils de vérification formelle et de certification qui permettront de ne pas

renoncer à une exécution sûre.

21

Page 22: Master 2 RFIAContenu du module Chapitre 1: Introduction au calcul à haut débit Architectures parallèles et distribuées Présentation des grilles et domaines d’application. Typologie

Développer un véritable langage pour le calcul scientifique à grande échelle. L’avènement du

calcul sur grilles est une occasion de réactiver le calcul massivement parallèle ; pour cela, il

faut encourager les actions conjointes entre utilisateurs et concepteurs de langages.

Développer des modèles de composants logiciels distribués permettant de construire des

applications réparties sur les grilles (idéalement, ceci se ferait de la même manière que des

applications à forte mobilité des utilisateurs et des codes).

22

Page 23: Master 2 RFIAContenu du module Chapitre 1: Introduction au calcul à haut débit Architectures parallèles et distribuées Présentation des grilles et domaines d’application. Typologie

Principes de fonctionnement

Les utilisateurs laissent tourner un programme sur leur machine (appelée client) qui va

chercher sur un serveur les données pour les prochains calculs à effectuer, fait les calculs et

renvoie les résultats et ainsi de suite jusqu'à épuisement des données à traiter.

Les outils de calcul distribué favorisent la distribution d'exécutables qui effectuent un

fragment du calcul global sur chacun des postes clients. Cette technique permet d'utiliser les

cycles CPU inutilisés la nuit, ou dès que l'écran de veille se met en marche.

23

Page 24: Master 2 RFIAContenu du module Chapitre 1: Introduction au calcul à haut débit Architectures parallèles et distribuées Présentation des grilles et domaines d’application. Typologie

Etapes de fonctionnement

1 - Le gestionnaire de tâches client interroge d'abord les différents répertoires de ressources

pour connaître la disponibilité des différents nœuds de la grille.

2 - Il sélectionne un nœud cible, puis y déplace les données et programmes nécessaires à

l'exécution du calcul.

3 - Le gestionnaire de tâches local répartit les calculs, les exécute, puis avertit le gestionnaire

de tâches client lorsque le traitement est terminé.

4 - Ce dernier rapatrie éventuellement les données en local ou sur différents nœuds de la

grille.

Mais s'il est séduisant, ce concept n'est simple qu'en apparence. Sa complexité tient à de

nombreux facteurs, tels que la gestion du nombre de détenteurs de ressources ou du nombre

de sites reliés à la grille, tous les calculs ne pouvant s'effectuer simultanément sous peine d'un

ralentissement des performances. La solution mise au point doit donc être capable d'affecter

des tâches à chacun des postes disponibles, de rassembler ensuite les résultats, bien entendu

de manière sécurisée, car le Grid est une cible formidable pour les pirates.

24

Page 25: Master 2 RFIAContenu du module Chapitre 1: Introduction au calcul à haut débit Architectures parallèles et distribuées Présentation des grilles et domaines d’application. Typologie

Les différents types de grille

informatiques

Une grille garantit des qualités de service non-triviales, c'est-à-dire qu'elle se distingue des

autres infrastructures dans son aptitude à répondre adéquatement à des exigences, compte tenu

de ses capacités. Il n'est parfois pas évident de repérer les systèmes de grilles informatiques

dans notre monde. Pourtant, il en existe 3 sortes :

Les grilles d'information : C'est sans aucun doute la première incarnation évidente du

concept de grille.

Elle permet le partage de l'information à travers un réseau. On peut, bien évidemment dire que

ces principes sont repris dans l'Internet.

Toutefois, on ne se sait pas toujours d’où vient l’information (sources fiables ?)

25

Page 26: Master 2 RFIAContenu du module Chapitre 1: Introduction au calcul à haut débit Architectures parallèles et distribuées Présentation des grilles et domaines d’application. Typologie

Les grilles de stockage : Ce principe de grille permet la partage de données externalisées

entre plusieurs noeuds vers plusieurs noeuds.

Les cas les plus représentatifs de ce concept sont les réseaux d'échange Peer-To-Peer

("P2P"). Ce système permet l'accès à des données (fichiers, flux...) via un réseau de sites

(ou serveurs) qui contiennent et partagent un index. Les données sont référencées pour

optimiser les recherches à travers un moteur de recherche. Les fichiers peuvent se trouver

sur des noeuds différents du réseau, en différents points du globe. Il peut donc y avoir

plusieurs copies d'un même fichier afin d'optimiser l'obtention de ce dernier. Les données

sont dites "inaltérables", car elles sont marquées et identifiés via une procédure de

hachage.

Parmi ces systèmes, on pourra notamment citer l'existence du réseau GNUtella ou encore

KaZaA. Mais ce genre de principe est relativement vulnérable, de par le partage de

fichier.

26

Page 27: Master 2 RFIAContenu du module Chapitre 1: Introduction au calcul à haut débit Architectures parallèles et distribuées Présentation des grilles et domaines d’application. Typologie

Les grilles de calcul : C'est ce système qui nous intéressera par la suite. Il permet la

récupération et l'utilisation de ressources CPU inexploitées. Le principe est simple et permet

de regrouper des millions de postes pour un intérêt commun. On pourra notamment voir le

concept de la grille de calcul via la participation d'IBM avec son "World Grid Computing" ,

organisme mettant à disposition des laboratoires de recherche une puissance de calcul

phénoménale.

27

Page 28: Master 2 RFIAContenu du module Chapitre 1: Introduction au calcul à haut débit Architectures parallèles et distribuées Présentation des grilles et domaines d’application. Typologie

Les Topologies de grilles

D’un point de vue topologique, les grilles sont repertoriès en trois types par ordre croissant

d’étendue géographique et de complexité : Intragrilles (Intragrids), Extragrilles (Extragrids )

et Intergrilles (Intergrids ).

1. Intragrille (en analogie avec Intranet)

La plus simple des grilles est l’intragrille, composée d’un ensemble relativement simple de

ressources et de services et appartenant à une organisation unique. Les principales

caractéristiques d’une telle grille sont la présence d’un réseau d’interconnexion performant et

haut-débit, d’un domaine de sécurité unique et maîtrisé par les administrateurs de

l’organisation et d’un ensemble relativement statique et homogène de ressources. Une

entreprise peut être amenée à construire une intragrille pour augmenter la puissance de calcul

de ses équipes de recherche et développement tout en maintenant un niveau d’investissement

faible en terme de nouvelles infrastructures. (comme par exemple AMD lors de la phase de

conception de ses processeur K6 et K7).

28

Page 29: Master 2 RFIAContenu du module Chapitre 1: Introduction au calcul à haut débit Architectures parallèles et distribuées Présentation des grilles et domaines d’application. Typologie

2. Extragrille (en analogie avec Extranet)

Une extragrille étend le modèle en agrégeant plusieurs intragrilles. Les principales

caractéristiques d’une telle grille sont la présence d’un réseau d’interconnexion hétérogène

haut et bas débit (LAN / WAN), de plusieurs domaines de sécurité distincts, et d’un ensemble

plus ou moins dynamique de ressources. Un exemple d’utilisation est lors d’alliances et

d’échanges « Businessto-Business » (B2B) entre entreprises partenaires.

3. Intergrille (en analogie avec Internet)

Une intergrille consiste à agréger les grilles de multiples organisations, en une seule grille.

Les principales caractéristiques d’une telle grille sont la présence d’un réseau

d’interconnexion très hétérogène haut et bas débit (LAN / WAN), de plusieurs domaines de

sécurité distincts et ayant parfois des politiques de sécurité différentes et même

contradictoires, et d’un ensemble très dynamique de ressources. Les intergrilles seront

souvent mises en oeuvre lors de grands projets industriels (conception d’un avion par un

consortium aéronautique par exemple) ou scientifiques (modélisation de protéines) où

plusieurs organisations seront amenées à participer.

29

Page 30: Master 2 RFIAContenu du module Chapitre 1: Introduction au calcul à haut débit Architectures parallèles et distribuées Présentation des grilles et domaines d’application. Typologie

30

Page 31: Master 2 RFIAContenu du module Chapitre 1: Introduction au calcul à haut débit Architectures parallèles et distribuées Présentation des grilles et domaines d’application. Typologie

Les concepts de la grille de calcul

Une grille de calcul permet, comme vu précédemment, de répartir un calcul gigantesque sur

des postes distants, mais cette répartition est régulée par plusieurs concepts de construction de

la grille. Nous présentons trois exemples de systèmes de grille de calcul :

Le Virtual SuperComputing,

Le MetaComputing,

L'Internet Computing.

31

Page 32: Master 2 RFIAContenu du module Chapitre 1: Introduction au calcul à haut débit Architectures parallèles et distribuées Présentation des grilles et domaines d’application. Typologie

1. Le Virtual SuperComputing

Le concept de « Virtual Super Computing" est très apprécié dans le monde de la recherche. En

effet, il permet d'associer plusieurs clusters de calcul répartis géographiquement, à travers un

réseau spécialisé ou Internet.

L'intérêt d'un tel système permet, pour des modules de recherche, de proposer une puissance

de calcul phénoménale, dont chaque nœud a un administrateur connu. Cela permet alors de

contrôler l'intégrité des résultats retournés.

Ce système est actuellement utilisé dans le projet Rosetta@Home, qui étudie les structures

tridimensionnelles des protéines pour de futurs traitements médicamenteux. Les principaux

clusters se situent au National Institutes of Health (NIH), à la National Science Foundation

(NSF), au Howard HuguesMedical Institute (HHMI), et à l'Université de Washington.

Ce système offre donc la vision d'un hyper calculateur virtuel.

32

Page 33: Master 2 RFIAContenu du module Chapitre 1: Introduction au calcul à haut débit Architectures parallèles et distribuées Présentation des grilles et domaines d’application. Typologie

2. Le MetaComputing

Le concept de "MetaComputing" est arrivé lorsque des entreprises ont commencé à proposer

leur puissance de calcul aux différents demandeurs de puissance à travers le monde. Le

Virtual Super Computing.

Le principe est simple. Un client a un besoin immédiat d'une puissance de calcul, et ce

pendant un temps donné. Il achète alors un service de calcul sur l'Internet, qui lui fournit de

quoi envoyer des informations et recevoir les résultats après traitements. Le client se connecte

alors à un agent, qui distribue la tâche sur un système de calcul. C'est alors que la relation

entre le client et le serveur de calcul est réalisée. En général, on peut concevoir ce système via

l'implémentation de Web Services, qui permet d'envoyer et recevoir des données à traiter via

du XML.

33

Page 34: Master 2 RFIAContenu du module Chapitre 1: Introduction au calcul à haut débit Architectures parallèles et distribuées Présentation des grilles et domaines d’application. Typologie

Le Virtual Super Computing

34

Page 35: Master 2 RFIAContenu du module Chapitre 1: Introduction au calcul à haut débit Architectures parallèles et distribuées Présentation des grilles et domaines d’application. Typologie

Le Meta-Computing

35

Page 36: Master 2 RFIAContenu du module Chapitre 1: Introduction au calcul à haut débit Architectures parallèles et distribuées Présentation des grilles et domaines d’application. Typologie

3. L'Internet Computing

C'est le concept le plus simple à mettre en œuvre et le plus répandu.

Il permet de combiner la puissance de calcul de machines complètement différentes sur un

même projet. En général, ce système est utilisé pour rassembler un ensemble de machines

clientes qui n'ont aucune relation entre elles. Le but de ce principe est d'utiliser la puissance

d'une machine sans gêner l'utilisateur. En effet, un poste qui n'utilise qu'un traitement de texte

ne consomme pas toute la puissance de sa machine. De même quand l'économiseur d'écran est

actif.

On met alors en place une application qui va chercher des informations sur un serveur distant,

les traite en arrière-plan, et renvoie les résultats.

Ne nécessitant qu'une simple inscription pour participer à la grille de calcul, plusieurs projets

utilisent ces programmes en regroupent des millions de machines à travers le monde.

36

Page 37: Master 2 RFIAContenu du module Chapitre 1: Introduction au calcul à haut débit Architectures parallèles et distribuées Présentation des grilles et domaines d’application. Typologie

L’Internet Computing

37

Page 38: Master 2 RFIAContenu du module Chapitre 1: Introduction au calcul à haut débit Architectures parallèles et distribuées Présentation des grilles et domaines d’application. Typologie

Cadres d’utilisation du Grid

La Grille de calcul offre un éventail infini de possibilités tant les domaines pouvant bénéficier

d’une telle puissance et infrastructure sont nombreux.

1. Calcul distribué :

Les applications de calcul distribué sont évidemment d’excellentes candidates pour être

utilisées sur une grille. Elles bénéficient ainsi d’un nombre beaucoup plus important de

ressources de calcul leur permettant de résoudre des problèmes qui leur étaient auparavant

inaccessibles.

Ainsi par exemple, les expériences du LHC nécessiteront de l’ordre de 100 000 processeurs

pour traiter lamasse d’informations générées par le collisionneur. Il est évidemment illusoire

d’espérer disposer d’une telle puissance de calcul sur un seul et même site. L’utilisation d’une

grille se révèle dès lors indispensable.

38

Page 39: Master 2 RFIAContenu du module Chapitre 1: Introduction au calcul à haut débit Architectures parallèles et distribuées Présentation des grilles et domaines d’application. Typologie

Parmi les principaux défis que doit relever l’architecture de la grille pour de telles

applications, citons :

– L’ordonnancement à grande échelle des processus.

– La souplesse des algorithmes et protocoles qui doivent être capables de gérer un nombre de

nœuds pouvant aller de la dizaine à des centaines voire des milliers de fermes de machines.

– La tolérance des algorithmes aux temps de latence inhérents à la taille de la grille.

– Atteindre et maintenir un haut niveau de performances dans un système très hétérogène

39

Page 40: Master 2 RFIAContenu du module Chapitre 1: Introduction au calcul à haut débit Architectures parallèles et distribuées Présentation des grilles et domaines d’application. Typologie

2. High-Throughput Computing :

Le but ici n’est pas de rechercher la performance pure comme dans le cas précédent mais de

rentabiliser au maximum des ressources en récupérant les cycles processeurs non utilisés

quand celui-ci est oisif (idle). On pense bien entendu aux stations de travail qui sont

généralement très largement sous utilisées, ne serait-ce qu’en dehors des heures de bureau.

A titre d’exemple, le système Condor de l’Université du Wisconsin est utilisé pour gérer des

groupes de centaines de machines dans des universités et laboratoires aux quatre coins du

monde. Ces ressources sont utilisées pour des études aussi diverses et variées que la

simulation moléculaire, le traitement de signal ou l’attaque de systèmes cryptographiques.

40

Page 41: Master 2 RFIAContenu du module Chapitre 1: Introduction au calcul à haut débit Architectures parallèles et distribuées Présentation des grilles et domaines d’application. Typologie

Un autre projet bien connu du grand public, SETI@home, même s’il ne constitue pas

vraiment une grille de calcul au sens où nous l’entendons, est basé sur un principe similaire.

Tout un chacun peut installer un logiciel permettant d’effectuer automatiquement, lorsque

l’ordinateur est oisif, des calculs de traitement de signaux dans l’espoir de détecter des signes

d’une intelligence extraterrestre.

3. Calcul à la demande

Ce type d’applications utilise la grille afin de satisfaire des besoins à court terme en

ressources, tels qu’ils ne peuvent être satisfaits en local pour des raisons pratiques ou de

rentabilité. Ces ressources peuvent être du temps de calcul, des logiciels, des données, des

capteurs spécialisés...

Contrairement au calcul distribué, le but recherché ici est plutôt la rentabilité que les

performances pures.

Pour rendre cette nouvelle forme d’utilisation des ressources possible, il est primordial de

développer des systèmes performants et sécurisés de facturation (établir le montant à imputer

à l’utilisateur en fonction des différentes ressources qu’il a employées sur la grille) et de

paiement.

41

Page 42: Master 2 RFIAContenu du module Chapitre 1: Introduction au calcul à haut débit Architectures parallèles et distribuées Présentation des grilles et domaines d’application. Typologie

4. Traitement massif de données :

Dans ce type d’applications, le but est d’extraire de nouvelles informations à partir de grandes

bases de données distribuées géographiquement. Généralement, ces types de traitement sont

également de grands consommateurs de puissance de calcul et de bande passante.

Les systèmes de prévisions météorologiques modernes utilisent énormément de données

récoltées aux quatre coins du globe (comme des observations satellites par exemple).

Le processus complet implique des transferts et des traitements de plusieurs dizaines de giga-

octets de données.

Les expériences du LHC sont sans doute le meilleur exemple pour illustrer ce type de

problème. On considère en effet qu’une fois le collisionneur entré en service (prévu pour

2007), il devrait générer de l’ordre de 15 petaoctets (15millions de Gigaoctets) de données par

an. Pour donner un ordre d’idée, cela équivaut à 20 millions de CD’s, soit une pile de 20

kilomètres de haut ! La distribution géographique de ces données est ici indispensable.

Les principaux problèmes à résoudre pour ce type d’application sont l’acheminement et la

configuration de flux de données très importants à travers différents niveaux de hiérarchie.

42

Page 43: Master 2 RFIAContenu du module Chapitre 1: Introduction au calcul à haut débit Architectures parallèles et distribuées Présentation des grilles et domaines d’application. Typologie

5. Informatique collaborative

Le but des applications collaboratives est de permettre et favoriser les interactions entre les

personnes. Elles sont souvent structurées sous forme d’espaces virtuels partagés entre les

utilisateurs. La plupart de ces applications permettent de partager des ressources comme par

exemple des données ou des simulations. Elles partagent alors bien souvent des

caractéristiques avec les autres grands types d’applications décrites précédemment.

Les expériences du LHC sont ici encore une bonne illustration de ce type d’applications.

En effet, ce ne sont pas moins de quelque 5000 chercheurs répartis dans plus de 500

universités et instituts qui devront pouvoir accéder aux résultats des différentes expériences.

L’infrastructure de la grille se révèle être un excellent vecteur pour ce type d’applications

43

Page 44: Master 2 RFIAContenu du module Chapitre 1: Introduction au calcul à haut débit Architectures parallèles et distribuées Présentation des grilles et domaines d’application. Typologie

Domaines d'application des grilles

informatiques

Le grid computing est un excellent moyen de partager des données ou une puissance de

calcul. Et cela, certains l'on bien compris. Ce principe est utilisé dans une multitude de

projets, pour des objectifs différents.

44

Page 45: Master 2 RFIAContenu du module Chapitre 1: Introduction au calcul à haut débit Architectures parallèles et distribuées Présentation des grilles et domaines d’application. Typologie

1) Le domaine industriel : Les entreprises qui, aujourd'hui, utilisent les grilles de calcul, ont

bien compris son intérêt: Réduction des coûts d'exploitation comparé à un cluster, gain de

place dans une salle serveurs, utilisation de ressources existantes et internes à l'entreprise (les

postes des secrétaires...) ; les sociétés ont trouvé en cette technologie une alternative

intéressante aux grappes de calcul.

Aujourd'hui, beaucoup de domaines industriels ont besoin de puissance informatique:

Le calcul d'images (Films d'animation...),

La simulation d'utilisation de matériaux (Airbus),

La simulation d'utilisation de réseaux électriques (EDF),

La simulation d'activités pétrolifères (Institut Français du Pétrole),

Les simulations bancaires (Banques, intermédiaires boursiers),

Les simulations militaires (EADS).

45

Page 46: Master 2 RFIAContenu du module Chapitre 1: Introduction au calcul à haut débit Architectures parallèles et distribuées Présentation des grilles et domaines d’application. Typologie

un problème se pose pour toutes ces entreprises : Le fait d'externaliser leurs

calculs ne garantissent pas une certaine confidentialité des données traitées.

En effet, les sociétés qui traitent des données ne souhaitent pas qu'un

utilisateur lambda récupère des informations critiques.

Pour cela, certaines entreprises se limitent strictement à l'utilisation de leurs propres postes.

De plus, un système d'authentification permet de limiter les tentatives de récupération des

données traitées.

46

Page 47: Master 2 RFIAContenu du module Chapitre 1: Introduction au calcul à haut débit Architectures parallèles et distribuées Présentation des grilles et domaines d’application. Typologie

47

2 ) Le domaine scientifique :

La grille de calcul a pour origine le domaine de la recherche.

De ce fait, beaucoup de professeurs se sont intéressés à pousser leurs études sur ce système.

C'est pour cela que le grid computing a surtout évolué dans un environnement universitaire, et

ne fait toujours pas, à l’heure actuelle, l’objet de normalisation.

En effet, tous les projets qui ont été développés à ce jour ne sont que des prototypes. Chacun

essaie de montrer que sa méthode est la meilleure.

Toutefois, des travaux universitaires ou scientifiques utilisent le Grid Computing.

Page 48: Master 2 RFIAContenu du module Chapitre 1: Introduction au calcul à haut débit Architectures parallèles et distribuées Présentation des grilles et domaines d’application. Typologie

Quelques exemples

Le projet a été initié par l'Université de Berkeley. C'est une expérience scientifique qui utilise

des ordinateurs connectés à Internet pour la recherche d'intelligence extraterrestre. Plus de 3

millions d'utilisateurs ont permis à ce projet de devenir le plus long calcul de toute l'histoire

du grid computing. En effet, près de 600 000 années de calcul temps-processeur ont été

consacrés à la recherche extraterrestre.

48

Page 49: Master 2 RFIAContenu du module Chapitre 1: Introduction au calcul à haut débit Architectures parallèles et distribuées Présentation des grilles et domaines d’application. Typologie

Développé par l'Université de Stanford, ce projet étudie les interactions entre le génome et les

protéines. Près de 90 000 membres actifs proposent leurs machines personnelles pour ces

calculs de recherche.

49

Page 50: Master 2 RFIAContenu du module Chapitre 1: Introduction au calcul à haut débit Architectures parallèles et distribuées Présentation des grilles et domaines d’application. Typologie

La communauté de calcul a été élaborée par la société IBM. Elle a pour but de créer un lien

entre des laboratoires de recherche qui ont besoin d'une énorme puissance de calcul, et des

volontaires soucieux de participer à la recherche scientifique. Ce système permet à l'utilisateur

de choisir sa participation sur un des projets lancés.

Plus de 250 000 personnes se sont inscrites, pour un total de 80 000 années temps-processeur.

50

Page 51: Master 2 RFIAContenu du module Chapitre 1: Introduction au calcul à haut débit Architectures parallèles et distribuées Présentation des grilles et domaines d’application. Typologie

Le Décrypthon est une opération lancée en 2001 afin de réaliser la première cartographie du

protéome. Près de 75 000 internautes ont participé à sa première version. Le système a tourné

pendant 2 mois. Si une seule machine avait tourné pour ces calculs, il aurait fallu plus de 1100

années.

51