• Aucun résultat trouvé

5.5.1

Un Serveur avec Une Carte Accélératrice

Tous les tests pour l’architecture hybride avec un hôte et une carte accélératrice ont été réalisés sur les deux modèles de machines. L’hôte est un Intel Xeon version E5-2680 (2 sockets), 32 Go de RAM les cœurs sont hyperthreadés donc il dispose de 16 processeurs physiques et de 16

5.5. Tests et Mesures

cœurs virtuels. Il est possible de faire tourner 32 processus logiques simultanément. Le nom de la famille de la micro-architecture du Xeon est Sandy Bridge, les processeurs sont cadencés à 2.70 GHz. La carte Intel Xeon Phi Coprocessor est la version x100, 16Go de RAM, à 61 cœurs physiques, hyperthreadés à 244 processus logiques en mode natif et 240 en mode offload. Les processeurs sont de la famille Pentium 1, cadencés à 1.24 GHz. Les performances théoriques en simple précision et double précison sont inscrites dans le tableau 5.2. On peut noter que les performances observées sur la figure 5.8 correspondent à peu près aux performances théoriques annoncées en simple précision. Les résultats en double précisions correspondent également aux performances attendues.

Précision CPU MIC Hybride (1 x MIC) Hybide (6 x MIC)

Simple 660 2047 2707 12942

Double 330 1023 1353 6468

Table 5.2: Puissance théorique en GFLOPs pour les architectures utilisées en simple précision et double précision.

La première version du moteur de calcul d’évaluation de portefeuille massif d’actifs financiers exhibait des temps de calcul d’un peu plus d’une heure sur l’Intel Xeon. Sur la carte accélératrice, en mode natif nous obtenions un temps de calcul autour de la demi-heure; ce qui correspond aux performances attendues, c’est-à-dire 2 fois plus puissante que l’hôte. Tous les résultats succédants un gain en performance après chaque optimisation n’a malheureusement pas été gardés, nous exhibons seulement les résultats finaux.

Cette version du problème test est effectuée séparément sur des portefeuilles allant jusqu’à 100 000 SWAPs et 100 000 CAPs/FLOORs, on ne considère qu’un seul facteur de risque. La distribution et les spécificités des portefeuilles ont été établies sur des portefeuilles d’une grande banque française et tente de calquer au plus la réalité. La génération des contrats a tout de même été simplifiée pour diminuer le nombre d’interpolation à faire sur les dates de paiements. Sur les tableaux 5.3 et 5.4, on peut observer les performances en terme de temps de calcul (exprimé en seconde) sur un portefeuille contenant uniquement des SWAPs, les calculs sont faits en précision

simple. On a testé trois types d’implémentation différentes27:

• Un code visant uniquement l’Intel Xeon.

• Un code visant l’architecture hybride en mode offload (faisant travailler simultanément les

deux machines).

• Un code visant uniquement l’Intel Xeon Phi Coprocessor en mode natif

Une fois encore, les résultats viennent confirmer nos attentes et les temps de calculs sont infimes en comparaison de la première version implémentée. On aura les mêmes conclusions pour les résultats obtenus en double précision. Ces résultats sont exhibés dans les tableaux 5.5 et 5.6.

5.5.2

Un Serveur avec Six Cartes Accélératrices

Avec l’aide de 2CRSI, nous avons pu tester une architecture comportant un serveur et six cartes accélératrices. La configuration est pour l’hôte, on dispose d’un Intel Xeon E5-2630 v2 (2 sockets), 12 cœurs physiques et 12 cœurs virtuels. Il est possible de faire tourner 24 processus logiques et on

27le code ne change pratiquement pas, mise à part quelques options de compilation et d’options dans certaines

Contrats CPU MIC (natif) Hybride (offload) 5000 4.75 2.32 1.60 (-0.58) 10000 9.21 4.01 2.50 (-0.73) 25000 25.12 11.79 7.76 (-1.15) 50000 48.93 22.36 14.25 (-1.38) 75000 73.24 32.58 21.08 (-1.56) 100000 86.04 40.03 27.09 (-1.89)

Table 5.3: Temps de calculs en seconde pour plusieurs tailles de portefeuilles contenant unique- ment des SWAPs. Le calcul (double précision) est testé sur trois architectures. On exhibe les temps de chargement des données pour l’architecture hybride.

Contrats CPU MIC (natif) Hybride (offload)

5000 5.11 2.89 1.98 (-0.54) 10000 10.39 4.56 3.15 (-0.61) 25000 24.74 10.95 7.82 (-0.89) 50000 49.32 23.84 15.26 (-1.01) 75000 74.99 35.74 22.44 (-1.14) 100000 89.81 41.35 28.02 (-1.27)

Table 5.4: Temps de calculs en seconde pour plusieurs tailles de portefeuilles contenant unique- ment des CAPs/FLOORs. Le calcul (simple précision) est testé sur trois architectures. On exhibe les temps de chargement des données pour l’architecture hybride.

Contrats CPU MIC (natif) Hybride (offload)

5000 19.02 9.16 5.92 (-0.58) 10000 37.34 18.30 11.60 (-1.07) 25000 102.43 49.86 31.05 (-1.99) 50000 190.59 94.02 57.48 (-2.52) 75000 286.49 139.74 86.18 (-3.13) 100000 363.99 177.85 108.13 (-3.48)

Table 5.5: Temps de calculs en seconde pour plusieurs tailles de portefeuilles contenant unique- ment des SWAPs. Le calcul (double précision) est testé sur trois architectures. On exhibe les temps de chargement des données pour l’architecture hybride.

Contrats CPU MIC (natif) Hybride (offload)

5000 18.78 9.75 6.02 (-0.27) 10000 35.83 19.62 12.21 (-0.29) 25000 114.62 48.63 32.37 (-0.39) 50000 183.02 97.05 62.08 (-0.56) 75000 273.49 135.96 84.97 (-0.82) 100000 376.34 183.12 112.33 (-1.11)

Table 5.6: Temps de calculs en seconde pour plusieurs tailles de portefeuilles contenant unique- ment des CAPs/FLOORs. Le calcul (double précision) est testé sur trois architectures. On exhibe les temps de chargement des données pour l’architecture hybride.

5.5. Tests et Mesures

dispose de 64 Go de RAM. Les cartes accélératrices sont du même modèle que sur l’architecture testée précédemment. Le problème test est similaire à celui de la section 5.5.1 à la différence que l’on génère un portefeuille massif d’actifs financiers sur plusieurs milliers de risques facteurs (5 000 sous-jacents). Par conséquent, la masse de données à transférer aux cartes est dramatiquement élevée. En effet, il faudra charger plus d’une dizaine de Go de données par carte accélératrice.

Cette spécificité nous rapproche encore plus de la réalité d’un vrai portefeuille d’une grande banque. Dans les résultats, nous n’exhibons pas les temps de simulations et de diffusion des risques facteurs car ceux-ci sont normalement gérés par d’autres systèmes d’information au sein d’une banque. Le travail ici s’effectue seulement sur l’évaluation des actifs financiers.

Sur le tableau 5.7, on peut observer les performances en seconde pour du calcul en simple

précision28sur l’architecture à six cartes accélératrices. On évalue jusqu’à 100 000 SWAPs et 100

000 CAPs/FLOORs indépendamment. La dernière colonne exhibe des temps de calculs pour des portefeuilles comportant jusqu’à 200 000 produits financiers. on peut voir que pour les SWAPs et les CAPs/FLOORs, les temps de calculs correspondent à peu près à ce qu’on attendait en terme de performance. Si on compare ceux obtenus avec l’architecture précédente, on obtient un ratio de 4 sachant que la configuration du serveur est plus puissante que celle-ci.

Contrats SWAPs CAPs/FLOORs SWAPs + CAPs/FLOORs

5000 0.64 1.01 1.72 10000 1.18 1.82 3.03 25000 2.43 4.01 6.50 50000 4.53 6.38 10.92 75000 5.93 7.88 13.87 100000 7.63 8.68 16.42

Table 5.7: Temps de calculs en seconde pour plusieurs tailles de portefeuilles contenant unique- ment des SWAPs, des CAPs/FLOORs et les deux produits. Le calcul est en simple précision.

Malheureusement, il faut rajouter les temps de transfert à ces temps de calculs. Pour 1 000 simulations par risques facteurs, il faut en tout 40 secondes de temps de transfert sur les cartes. Si on compare ce temps avec les temps de calculs, on voit que le temps de chargement

des données devient le nœud critique de l’algorithme29. Ce temps est six fois plus important que

pour l’évaluation de 100 000 SWAPs. Pour 5 000 simulations par risques facteurs, on obtient 205 secondes de temps de transfert et pour 10 000 simulations, 404 secondes. Cette problématique implique d’avoir une autre approche sur la configuration de l’architecture ou une implémentation différente du transfert de données sur les cartes.

Enfin sur la figure 5.10, on peut observer les ratios de facteurs d’accélération avec un seul

serveur30. Les résultats correspondent pratiquement aux performances théoriques attendues,

c’est-à-dire qu’une carte accélératrice est 2 fois plus puissante que l’Intel Xeon, l’architecture hybride montre 3 fois celle du serveur. Et l’architecture à six cartes accélératrices développe 13 fois plus puissant que l’hôte.

Comme ses travaux s’inscrivaient dans une démarche de démonstration de performance aux industries, il est important d’examiner quelques caractéristiques aux architectures proposées. Pour une entreprise, il est nécessaire de connaître, pour minimiser les dépenses, l’énergie con- sommée et son rapport qualité prix. Sur le tableau 5.8, on peut observer les prix de chacune

28nous n’avions pas assez de RAM pour faire du calcul en double précision

29Il faut savoir qu’une fois les données des risques facteurs simulées, on les transfert pas plusieurs fois à chaque

demande d’évaluation du portefeuille. Les données sont statiques.

des architectures qui ont été testées. La consommation en électricité d’un serveur Intel Xeon est 3 fois plus élevée qu’une carte accélératrice Intel Xeon Phi Coprocessor et son prix est 2 fois plus grand. Donc une architecture à plusieurs cartes accélératrices permet d’obtenir le plus de puissance de calcul au prix le moins élevé. Et à l’heure où l’on parle sans cesse de réchauffement climatique, il est important d’étudier l’empreinte carbone de chaque configuration.

0 2 4 6 8 10 12 14

CPU MIC Hybride (1 x MIC) Hybride (6 x MIC)

Fac

teur d'Ac

celeration

Architecture

Figure 5.10: Facteur d’accélération développé en comparaison d’une architecture composée uniquement d’un serveur avec comme configuration Intel Xeon E5-2630 v2.

CPU MIC Hybride (1 x MIC) Hybide (6 x MIC)

Energie (Watt/h) 423 188 611 1551

Consommation (euro) 296 132 428 1087

Carbone (kgCO2/an) 1853 824 2676 6793

Machine (euro) 1800 800 2600 6600

Table 5.8: Énergie consommée en Watt par heure, prix de chaque architecture, prix de la con- sommation en électricité à l’année et émission de carbone par an en kilogramme des différentes configuration testées.

Documents relatifs