Séminaire IMS 10/01/2008
-
Upload
jaime-boyle -
Category
Documents
-
view
23 -
download
1
description
Transcript of Séminaire IMS 10/01/2008
![Page 1: Séminaire IMS 10/01/2008](https://reader036.fdocuments.fr/reader036/viewer/2022081519/56813627550346895d9d9e7c/html5/thumbnails/1.jpg)
Séminaire IMS10/01/2008
Xavier WARIN (EDF R&D - OSIRIS)Stéphane VIALLE (SUPELEC - IMS)
Constantinos MAKASSIKIS (SUPELEC - IMS, LORIA - AlGorille)
Distribution large échelle d’un algorithme financier de contrôle
stochastique
CIGC05 - GCPMF
![Page 2: Séminaire IMS 10/01/2008](https://reader036.fdocuments.fr/reader036/viewer/2022081519/56813627550346895d9d9e7c/html5/thumbnails/2.jpg)
2
Introduction
1
![Page 3: Séminaire IMS 10/01/2008](https://reader036.fdocuments.fr/reader036/viewer/2022081519/56813627550346895d9d9e7c/html5/thumbnails/3.jpg)
3
Introduction
• Objectif : présentation du travail effectué dans l’équipe IMS depuis février 2007.
• Travail s’inscrit dans le cadre du projet ANR-GCPMF :– consortium d’industriels et d’académiques– But : étude de la faisabilité de l’utilisation de
clusters/grilles de calculs pour la finance– Cause : augmentation incessante des besoins en
puissance de calcul
![Page 4: Séminaire IMS 10/01/2008](https://reader036.fdocuments.fr/reader036/viewer/2022081519/56813627550346895d9d9e7c/html5/thumbnails/4.jpg)
4
Introduction
• Solution : distribution/parallélisation.– pour accélerer et passer à l’échelle
• Actuellement, parmi les applications en finance :– celles qui se décomposent en tâches indépendantes
commencent à être bien maîtrisées (applications Bag of Tasks (BoT)) ;
– celles qui se décomposent en tâches inter-dépendantes font l’objet de recherches …
![Page 5: Séminaire IMS 10/01/2008](https://reader036.fdocuments.fr/reader036/viewer/2022081519/56813627550346895d9d9e7c/html5/thumbnails/5.jpg)
5
Introduction
• En collaboration avec EDF, distribution d’une application utilisée pour la valorisation d’actifs de stockage de gaz.
• Application non BoT, mettant en jeu :– des calculs intensifs
ET
– des communications fréquentes : redistribution régulière de données et de résultats
nécessite une optimisation des échanges de données
![Page 6: Séminaire IMS 10/01/2008](https://reader036.fdocuments.fr/reader036/viewer/2022081519/56813627550346895d9d9e7c/html5/thumbnails/6.jpg)
6
Contexte financier
2
![Page 7: Séminaire IMS 10/01/2008](https://reader036.fdocuments.fr/reader036/viewer/2022081519/56813627550346895d9d9e7c/html5/thumbnails/7.jpg)
7
Contexte financier
• Actif de stockage de gaz :– cavité où est stocké le gaz ;
– matériel (pompes, …) pour injecter/sous-tirer.
– Contraintes de fonctionnement diverses.
• Fluctuations des prix du gaz :– Cause : modification de la demande (hiver, été)– Conséquence : possibilité d’arbitrer pour profiter de la
dynamique des prix → valorisation
Gaz
OUT
IN
![Page 8: Séminaire IMS 10/01/2008](https://reader036.fdocuments.fr/reader036/viewer/2022081519/56813627550346895d9d9e7c/html5/thumbnails/8.jpg)
8
• La valorisation fait appel à :– des algorithmes de contrôle stochastique– des modèles de prix variés
Contexte financier
Dans notre cas le propriétaire veut déterminer à quel prix il va louer une partie de son actif. Pour ce faire, il se fonde sur les résultats potentiels de différentes stratégies de gestion qu’il aurait pu appliquer sur la portion louée s’il ne l’avait pas louée.
![Page 9: Séminaire IMS 10/01/2008](https://reader036.fdocuments.fr/reader036/viewer/2022081519/56813627550346895d9d9e7c/html5/thumbnails/9.jpg)
9
Distribution del’algorithme
3
![Page 10: Séminaire IMS 10/01/2008](https://reader036.fdocuments.fr/reader036/viewer/2022081519/56813627550346895d9d9e7c/html5/thumbnails/10.jpg)
10
Algorithme séquentiel
tn-1t0
Aujourd’hui Futur
tnCalculs
Stochastiques
Prix de location
à t0
Hypothèsesde terminaison
![Page 11: Séminaire IMS 10/01/2008](https://reader036.fdocuments.fr/reader036/viewer/2022081519/56813627550346895d9d9e7c/html5/thumbnails/11.jpg)
11
Algorithme séquentiel
• Pour chaque pas de temps (de tn-1 à t0)
• Pour chaque niveau de stock admissible
– Calcul complexe pour déterminer la meilleure décision à prendre au temps ti avec un niveau de stock si :
« Injecter, ne rien faire ou soutirer ? »
![Page 12: Séminaire IMS 10/01/2008](https://reader036.fdocuments.fr/reader036/viewer/2022081519/56813627550346895d9d9e7c/html5/thumbnails/12.jpg)
12
Difficultés de parallélisation
• Pour chaque pas de temps (de tn-1 à t0)
• Pour chaque niveau de stock admissible
– Calcul complexe pour déterminer la meilleure décision à prendre au temps ti avec un niveau de stock si :
« Injecter, ne rien faire ou soutirer ? »
• La parallélisation au niveau de la boucle la plus externe est impossible à cause des dépendances de l’algorithme.
• Le niveau le plus intéressant se trouve au niveau de la boucle sur les niveaux de stock.
![Page 13: Séminaire IMS 10/01/2008](https://reader036.fdocuments.fr/reader036/viewer/2022081519/56813627550346895d9d9e7c/html5/thumbnails/13.jpg)
13
Structures de données
• A chaque pas de temps utilisation de deux tableaux : OldRes et NewRes.
• OldRes : contient les résultats du pas de temps précédent.
• NewRes : pour mémoriser les résultats du pas de temps courant.
• Problème : à chaque pas de temps le travail s’effectue sur une zone contiguë mais à bornes variables.
Niveaux de stock
Alé
as d
e pr
ix
Calculs
NewRes
OldResRésultats à ti+1
Résultats à ti
A ti :
![Page 14: Séminaire IMS 10/01/2008](https://reader036.fdocuments.fr/reader036/viewer/2022081519/56813627550346895d9d9e7c/html5/thumbnails/14.jpg)
14
DevientRedistribution
Schéma de parallélisation
• En séquentiel, on peut se placer dans le cas ci-contre.
Solution 1 : • réplication des tableaux.• broadcast.
ti+1 :
ti :
Solution 2 :• optimisation de la taille des tableaux.• redistribution de ce qui est nécessaire.
NewRes
OldRes
NewRes
Calculs
• En parallèle :
![Page 15: Séminaire IMS 10/01/2008](https://reader036.fdocuments.fr/reader036/viewer/2022081519/56813627550346895d9d9e7c/html5/thumbnails/15.jpg)
15
Schéma de parallélisation
ti :
ti+1 :P2P1P0 Res à ti+1
P1 P2P0
P1 P2P0
P2P1P0
P2P1P0
BA
C D
1) Déterminer la nouvelle distribution des calculs à ti
3) Déterminer les données à envoyer par P1 (Send)
2) Déterminer les données requises à ti par P1 (Receive)
5) Effectuer les communications selon le plan de routage (MPI)
6) Calculer Res à ti
P0 P1C A D
P2
- A BReceiveSend
4) Allouer structures de données de taille optimale
Sur P1:
Res à ti
Plan deroutage
![Page 16: Séminaire IMS 10/01/2008](https://reader036.fdocuments.fr/reader036/viewer/2022081519/56813627550346895d9d9e7c/html5/thumbnails/16.jpg)
16
Etude des performances
4
![Page 17: Séminaire IMS 10/01/2008](https://reader036.fdocuments.fr/reader036/viewer/2022081519/56813627550346895d9d9e7c/html5/thumbnails/17.jpg)
17
Evaluation des performances
• Expérimentations sur 3 architectures distribuées :– Deux clusters de PCs (SUPELEC et GRID’5000/Sophia).
– Le supercalculateur Blue Gene/L d’EDF R&D.
• Avec 3 modèles de prix du gaz :
Besoins
ModèleCalculs Mémoire
Gaussien « G » * *Normal Inverse Gaussien « NIG » ** *Gaussien 2 facteurs « G-2f » **** ****
![Page 18: Séminaire IMS 10/01/2008](https://reader036.fdocuments.fr/reader036/viewer/2022081519/56813627550346895d9d9e7c/html5/thumbnails/18.jpg)
18
1,E+00
1,E+01
1,E+02
1,E+03
1,E+04
1 10 100 1000
Number of processors
Ex
ec
uti
on
tim
e (
s)
G on Blue Gene 1p/node
G on P4 cluster
G on Opteron cluster 1p/node
Performances avec « G »
8
15s64 1024
54min
14min
![Page 19: Séminaire IMS 10/01/2008](https://reader036.fdocuments.fr/reader036/viewer/2022081519/56813627550346895d9d9e7c/html5/thumbnails/19.jpg)
19
1,E+00
1,E+01
1,E+02
1,E+03
1,E+04
1,E+05
1,E+06
1 10 100 1000
Number of processors
Ex
ec
uti
on
tim
e (
s)
NIG on Blue Gene 2p/nodeNIG on P4 clusterNIG on Opteron cluster 2p/node
Performances avec « NIG »
128 1024
3min
6h40
![Page 20: Séminaire IMS 10/01/2008](https://reader036.fdocuments.fr/reader036/viewer/2022081519/56813627550346895d9d9e7c/html5/thumbnails/20.jpg)
20
Performances avec « G-2f »
• Besoin de beaucoup de mémoire– 11 Go pour l’exécution séquentielle – 10 CPUs avec 2 Go en parallèle
• Exécution rendue possible par notre distribution
• Scale jusqu’à 1024 processeurs
• Limitation :– Impossible de calculer un speedup rigoureux– Donc étude d’extensibilité (seulement)
![Page 21: Séminaire IMS 10/01/2008](https://reader036.fdocuments.fr/reader036/viewer/2022081519/56813627550346895d9d9e7c/html5/thumbnails/21.jpg)
21
Performances avec « G-2f »
Blue Gene wins !
1,E+03
1,E+04
1,E+05
10 100 1000 10000
Number of processors
Ex
ecu
tio
n t
ime
(s
)
Blue Gene 2p/nodeBlue Gene 1p/nodeOpteron cluster 2p/nodeOpteron cluster 1p/nodeP4 cluster 1p/node
128
1024
16
14h
2h20
46min
![Page 22: Séminaire IMS 10/01/2008](https://reader036.fdocuments.fr/reader036/viewer/2022081519/56813627550346895d9d9e7c/html5/thumbnails/22.jpg)
22
Etude d’extensibilité avec « G-2f »
0
50
100
150
200
250
300
0,000,250,500,751,001,251,501,752,002,25
q-discretization (MWatt)
Re
qu
ire
d n
um
be
r o
f p
roc
es
so
rs
G-2f on Blue Gene 2p/node
G-2f on Opteron cluster 2p/node
Fine simulationsRough simulations
13052€
13589€
13870€
11065€
Accuracy level
Maintient du temps d’exécution
![Page 23: Séminaire IMS 10/01/2008](https://reader036.fdocuments.fr/reader036/viewer/2022081519/56813627550346895d9d9e7c/html5/thumbnails/23.jpg)
23
Conclusion &Perspectives
5
![Page 24: Séminaire IMS 10/01/2008](https://reader036.fdocuments.fr/reader036/viewer/2022081519/56813627550346895d9d9e7c/html5/thumbnails/24.jpg)
24
Conclusion & Perspectives
• Distribution originale d’un algorithme itératif de contrôle stochastique dynamique : distribution à chaque pas de temps des calculs et des données.
• Résultats issus des expérimentations témoignent de l’efficacité de notre distribution sur clusters de PCs (128 CPUs) et supercalculateur (1024 CPUs)– Accéleration de l’exécution sur trois modèles de prix aux
caractéristiques variées
– 2 modèles de référence et 1 nouveau modèle
![Page 25: Séminaire IMS 10/01/2008](https://reader036.fdocuments.fr/reader036/viewer/2022081519/56813627550346895d9d9e7c/html5/thumbnails/25.jpg)
25
Conclusion & Perspectives
• Actuellement, une version multidimensionnelle de l’algorithme destinée à gérer plusieurs actifs de stockage simultanément, mise au point conjointement par EDF R&D et SUPELEC, est en train d’être évaluée.
• Un cas test sur 7 stocks met :– 18 h sur les 32 PCs du cluster de SUPELEC ;– 5h50 sur 1024 nœuds de Blue Gene.
Les temps de calculs sont réduits MAIS restent longs !
La possibilité d’occurrence de pannes n’est pas écartée : même sur Blue Gene !
![Page 26: Séminaire IMS 10/01/2008](https://reader036.fdocuments.fr/reader036/viewer/2022081519/56813627550346895d9d9e7c/html5/thumbnails/26.jpg)
26
Conclusion & Perspectives
• A présent investissement dans l’étude des techniques de tolérance aux pannes.
![Page 27: Séminaire IMS 10/01/2008](https://reader036.fdocuments.fr/reader036/viewer/2022081519/56813627550346895d9d9e7c/html5/thumbnails/27.jpg)
27
Questions ?
?
![Page 28: Séminaire IMS 10/01/2008](https://reader036.fdocuments.fr/reader036/viewer/2022081519/56813627550346895d9d9e7c/html5/thumbnails/28.jpg)
28