Télécharger la présentation
La présentation est en train de télécharger. S'il vous plaît, attendez
Publié parGrosvenor Pierre Modifié depuis plus de 10 années
1
Séminaire IMS 10/01/2008 Distribution large échelle d’un algorithme financier de contrôle stochastique CIGC05 - GCPMF Xavier WARIN (EDF R&D - OSIRIS) Stéphane VIALLE (SUPELEC - IMS) Constantinos MAKASSIKIS (SUPELEC - IMS, LORIA - AlGorille)
2
Introduction 1
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
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 …
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
6
Contexte financier 2
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. Gaz OUT IN 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
8
Contexte financier La valorisation fait appel à :
des algorithmes de contrôle stochastique des modèles de prix variés 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.
9
Distribution de l’algorithme
3
10
Algorithme séquentiel
Aujourd’hui Futur Prix de location à t0 Phase 1 : une phase rapide de génération de futurs possibles (arbre trinomial: à chaque noeud possibilité d’injecter du gaz, d’en soutirer ou de ne rien faire) Phase 2 : phase d’application de l’algorithme de contrôle stochastique (résolution backwards; phase d’optimisation pour choisir la meilleure stratégie de gestion) Intervention de calculs stochastiques complexes dépendants des niveaux de stock admissibles et d’aléas de prix issus du modèle de prix utilisé t0 tn-1 tn Calculs Stochastiques Hypothèses de terminaison
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 ? »
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.
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. A ti : Niveaux de stock Aléas de prix Résultats à ti+1 OldRes Calculs Résultats à ti NewRes
14
Schéma de parallélisation
En séquentiel, on peut se placer dans le cas ci-contre. NewRes Redistribution Devient ti : OldRes Calculs En parallèle : NewRes Solution 1 : réplication des tableaux. broadcast. Solution 2 : optimisation de la taille des tableaux. redistribution de ce qui est nécessaire.
15
Schéma de parallélisation
Sur P1: P2 P1 P0 P2 P1 P0 Res à ti+1 ti : 1) Déterminer la nouvelle distribution des calculs à ti P1 P2 P0 Res à ti 2) Déterminer les données requises à ti par P1 (Receive) Plan de routage P2 P1 P0 C D 3) Déterminer les données à envoyer par P1 (Send) A B 4) Allouer structures de données de taille optimale P0 P1 C A D P2 - B Receive Send 5) Effectuer les communications selon le plan de routage (MPI) P1 P2 P0 6) Calculer Res à ti
16
Etude des performances
4
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èle Calculs Mémoire Gaussien « G » * Normal Inverse Gaussien « NIG » ** Gaussien 2 facteurs « G-2f » ****
18
Performances avec « G » 54min 14min 8 15s 64 1024 56x sur Opteron
216x sur BG
19
Performances avec « NIG »
6h40 3min 128 1024 133x = (6* )/3
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)
21
Performances avec « G-2f »
14h 16 2h20 128 46min 1024 Blue Gene wins !
22
Etude d’extensibilité avec « G-2f »
Maintient du temps d’exécution
23
Conclusion & Perspectives
5
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
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 !
26
Conclusion & Perspectives
A présent investissement dans l’étude des techniques de tolérance aux pannes.
27
Questions ? ?
Présentations similaires
© 2024 SlidePlayer.fr Inc.
All rights reserved.