Rapport de projet de fin d’´etude
´
Etude de la technologie JavaSpace sur un cluster de PCs
Sup´elec - Option IIC
Professeurs Encadrants : St´ephane Vialle et Virginie Galtier
12 Avril 2006
par Farid Rahba et Renaud Boutet
R´esum´e : Dans ce projet, nous ´etudions les performances de la technologie
JavaSpace dans les calculs parall`eles. Nous disposons pour ce faire d’un cluster
de 32 PCs sur lequel nous d´eployons la simulation des trajectoires de N plan`etes
(plus connu sous le nom de probl`eme des N corps). Nous nous int´eressons aux
performances de ce syst`eme quant aux acc´el´erations obtenues, et nous essayons
de mettre en place une gestion efficace des pannes.
Table des mati`eres
1 Introduction 2
2 Pr´esentation du probl`eme des N-Corps 4
3 Algorithmes s´equentiels mis en œuvre 6
3.1 Algorithme de r´ef´erence . . . . . . . . . . . . . . . . . . . . . . . 6
3.1.1 Implantation ......................... 6
3.1.2 R´esultats ........................... 9
3.2 Algorithme optimis´e . . . . . . . . . . . . . . . . . . . . . . . . . 10
3.2.1 Implantation ......................... 10
3.2.2 R´esultats ........................... 12
4 Premiers pas avec JavaSpace 14
4.1 Principes g´en´eraux . . . . . . . . . . . . . . . . . . . . . . . . . . 14
4.2 Comment lance-t-on un JavaSpace ? . . . . . . . . . . . . . . . . . 16
5 Quelques remarques pour une mise en place efficace de benchs 17
5.1 Mesure des performances . . . . . . . . . . . . . . . . . . . . . . . 17
5.2 Mise en place des benchs . . . . . . . . . . . . . . . . . . . . . . . 18
5.3 Automatisation des connexions . . . . . . . . . . . . . . . . . . . 19
6 Parall´elisation de l’algorithme de r´ef´erence 21
6.1 Introduction au probl`eme de parall´elisation . . . . . . . . . . . . . 21
6.2 Algorithme avec centralisateur . . . . . . . . . . . . . . . . . . . . 22
6.2.1 Implantation ......................... 22
6.2.2 D´eploiement.......................... 22
6.2.3 R´esultats ........................... 24
7 Deuxi`eme parall´elisation de l’algorithme de r´ef´erence 28
7.1 Nouveau transit de donn´ees . . . . . . . . . . . . . . . . . . . . . 28
7.2 Travailleur `a recouvrement de donn´ees . . . . . . . . . . . . . . . 29
7.3 Introduction d’une information de commande . . . . . . . . . . . 29
7.3.1 Principe ............................ 29
7.3.2 Int´erˆets majeurs . . . . . . . . . . . . . . . . . . . . . . . . 30
ii TABLE DES MATI`
ERES
7.4 R´ecapitulation du fonctionnement de l’algorithme . . . . . . . . . 30
7.5 R´esultats................................ 35
7.6 Version sans recouvrement . . . . . . . . . . . . . . . . . . . . . . 40
8 Tol´erance aux pannes 42
8.1 Introduction du probl`eme . . . . . . . . . . . . . . . . . . . . . . 42
8.2 Gestion des pannes des travailleurs . . . . . . . . . . . . . . . . . 42
8.2.1 Mise en place d’un syst`eme d’annonce des travailleurs . . . 42
8.2.2 D´etection de la panne . . . . . . . . . . . . . . . . . . . . 43
8.2.3 Gestion des pannes . . . . . . . . . . . . . . . . . . . . . . 44
8.2.4 R´ecapitulatif et sch´emas de principe . . . . . . . . . . . . 45
8.2.5 Performances obtenues . . . . . . . . . . . . . . . . . . . . 49
9 Conclusion 50
A Automatisation des connexions 51
Bibliographie 54
Table des figures
3.1 Diagramme UML de l’algorithme s´equentiel ................ 8
3.2 Trajectoires de 16 plan`etes en interaction gravitationnelle ......... 9
3.3 Evolution des performances de l’algorithme s´equentiel de r´ef´erence en fonction
du nombre de plan`etes .......................... 10
3.4 Evolution des performances de l’algorithme s´equentiel optimis´e en fonction du
nombre de plan`etes ............................ 12
3.5 Comparaison des deux algorithmes s´equentiels ............... 13
4.1 Les diff´erentes op´erations sur un JavaSpace ................ 15
6.1 D´eploiement sur le cluster de 32 PCs ................... 23
6.2 Temps d’ex´ecution en fonction du nombre de plan`etes et du nombre de pro-
cesseurs pour la version 1 de l’algorithme parall´elis´e ............ 24
6.3 Temps d’ex´ecution en fonction du nombre de plan`etes pour diff´erentes confi-
gurations du nombre de processeurs et pour la version 1 de l’algorithme pa-
rall´elis´e ................................. 26
6.4 Temps d’ex´ecution en fonction du nombre de processeurs pour diff´erentes
configurations du nombre de plan`etes et pour la version 1 de l’algorithme
parall´elis´e ................................ 26
6.5 Courbes de speed-up pour diff´erentes configurations du nombre de processeurs
pour la version 1 de l’algorithme parall´elis´e ................ 27
7.1 Etape 1 de l’algorithme parall´elis´e version 2 ................ 31
7.2 Etape 2 de l’algorithme parall´elis´e version 2 ................ 32
7.3 Etape 3 de l’algorithme parall´elis´e version 2 ................ 33
7.4 Etape 4 de l’algorithme parall´elis´e version 2 ................ 34
7.5 Temps d’ex´ecution en fonction du nombre de plan`etes et du nombre de pro-
cesseurs pour la version 2 de l’algorithme parallelis´e ............ 35
7.6 Temps d’ex´ecution en fonction du nombre de plan`etes pour diff´erentes confi-
gurations du nombre de processeurs et pour la version 2 de l’algorithme pa-
rall´elis´e ................................. 36
iv TABLE DES FIGURES
7.7 Temps d’ex´ecution en fonction du nombre de processeurs pour diff´erentes
configurations du nombre de plan`etes et pour la version 2 de l’algorithme
parall´elis´e ................................ 36
7.8 Courbes de speed-up pour diff´erentes configurations du nombre de processeurs
pour la version 2 de l’algorithme parall´elis´e ................ 37
7.9 Temps d’ex´ecution en fonction du nombre de processeurs pour la version 2 de
l’algorithme et pour 7000 plan`etes .................... 38
7.10 Speed-up en fonction du nombre de processeurs pour la version 2 de l’algo-
rithme et pour 7000 plan`etes ....................... 38
7.11 Efficacit´e en fonction du nombre de processeurs pour la version 2 de l’algo-
rithme et pour 7000 plan`etes ....................... 39
7.12 Extensibilit´e pour la deuxi`eme parall´elisation de l’algorithme de r´ef´erence . 40
7.13 Gain moyen de la version sans recouvrement Calculs/Communications par
rapport `a la version avec recouvrement en fonction du nombre de processeurs 41
8.1 Calcul des p´eriodes d’annonces et de v´erifications (gestion des pannes) . . . 44
8.2 Gestion des pannes, initialisation des travailleurs .............. 46
8.3 Gestion des pannes, initialisation du client ................. 46
8.4 Gestion des pannes, annonces de pr´esence ................. 47
8.5 Gestion des pannes, absence d’une annonce 1 ............... 47
8.6 Gestion des pannes, absence d’une annonce 2 ............... 48
1 / 60 100%
La catégorie de ce document est-elle correcte?
Merci pour votre participation!

Faire une suggestion

Avez-vous trouvé des erreurs dans linterface ou les textes ? Ou savez-vous comment améliorer linterface utilisateur de StudyLib ? Nhésitez pas à envoyer vos suggestions. Cest très important pour nous !