Des processeurs graphiques dédiés aux nouveaux indicateurs de risque

le 29/09/2011 L'AGEFI Hebdo

Pour démultiplier leurs performances en termes de puissance de calcul, les banques d’investissement ont élaboré des architectures informatiques nouvelle génération.

Elaborer un indicateur de risque comme le CRM (‘Comprehensive Risk Measure’) nécessite beaucoup de calculs, entre 100 et 200 fois plus que pour établir la VaR (‘Value-at-Risk’), l’étalon de risque classique sur un portefeuille », déclare Pierre Castellani, responsable du projet Comprehensive Risk et IRC (Incremental Risk Charge) au Crédit Agricole CIB. Le Comprehensive Risk Measure est un nouvel indicateur pour calculer le niveau de fonds propres requis pour des produits structurés complexes bien particuliers comme les CDS (credit default swaps) de couverture ou les CDO (collateralized debt obligations) synthétiques. « Concernant ces derniers, nos portefeuilles contiennent ce type de positions, qui subsistent encore dans le temps, bien que nous n’en proposions plus à nos clients », explique Pascal Gibart, responsable méthodologies, en charge du modèle interne à la direction des risques chez Crédit Agricole Corporate and Investment Bank (Crédit Agricole CIB). Cet établissement dispose d’une nouvelle architecture informatique, spécifiquement dédiée à ce calcul de CRM et reposant en partie sur des processeurs graphiques, habituellement réservés au traitement du signal vidéo. « Nous sommes opérationnels depuis trois mois environ et attendons l’audit du régulateur », rapporte Pascal Gibart. Les banques d’investissement doivent faire face à un accroissement concomitant des volumes de données à traiter et des mesures de risques à mener, si bien que leurs calculs sont de plus en plus chronophages, même à l’échelle de microprocesseurs. Aussi, elles ont commencé à s’intéresser à de nouvelles architectures informatiques, permettant de démultiplier significativement leurs performances en termes de puissance de calcul.

L’une des pistes de travail consiste à intégrer des processeurs graphiques (GPU - Graphics Processing Unit), des circuits intégrés destinés à l’affichage et aux rendus vidéo, particulièrement bien adaptés aux calculs « massivement parallèles », un procédé consistant à fractionner des calculs complexes en une multitude de calculs élémentaires effectués simultanément par plusieurs unité de calcul. « Les GPU conviennent bien aux calculs se basant sur la méthode Monte-Carlo (méthode d’approche probabiliste des risques dans une décision financière, NDLR) qui nécessite de recalculer un certain nombre de fois la valeur d’un portefeuille en changeant une seule variable à chaque fois, précise Pascal Gibart. On peut alors distribuer les calculs à autant de processeurs que l’on veut. » Aussi, dès l’obligation faite aux banques, en 2009, de calculer le CRM, les équipes de la direction des risques de Crédit Agricole CIB ont réfléchi à plusieurs architectures informatiques différentes pour faire face à cet accroissement prévisible des volumes de calcul. « On ne pouvait pas multiplier par 100 notre parc de serveurs, même si, sous la contrainte, il était possible d’optimiser notre code en le réécrivant », raconte Pierre Castellani. Crédit Agricole CIB a donc lancé deux études, dont l’une pilotée par Aneo, un cabinet d’ingénierie informatique spécialisé dans le calcul intensif, comprenant l’incorporation de processeurs graphiques dans son architecture. « La première approche, un peu naïve, consistait à augmenter le nombre de serveurs et d’unités de calcul, rapporte Pascal Gibart. La seconde consistait à intégrer des processeurs graphiques dont nous avions entendu parler pour leurs gains de performance. Mais vu de 2009, utiliser des processeurs graphiques paraissait très compliqué. »

Une réécriture du code indispensable

A l’image de Crédit Agricole CIB, d’autres banques d’investissement se sont également lancées dans l’exploitation de processeurs graphiques. Ainsi, dès 2009, l’activité Global Equities and Commodities Derivatives de BNP Paribas CIB mettait en œuvre une architecture basée en partie sur des accélérateurs graphiques NVidia pour le calcul de dérivés actions complexes. De son côté, JPMorgan a annoncé, en août dernier, que plus de la moitié des calculs de risques sur les produits dérivés sur actions étaient désormais effectués par des systèmes hybrides intégrant des GPU.

Une fois la décision prise d’une architecture hybride basée sur des GPU, le projet de Crédit Agricole CIB a nécessité un peu plus d’un an, dont six mois/homme pour la seule écriture et optimisation du code (langage de programmation) GPU qui étaient nécessaires. « Il a fallu réécrire entièrement le code de nos ‘priceurs’ CDO pour optimiser l’utilisation des GPU, confirme Pascal Gibart. Il faut bien arbitrer les transferts d’information entre le CPU et le GPU et être très précis dans les temps de transfert entre les différentes unités de traitement. Il faut connaître en détail le fonctionnement des processeurs graphiques pour tirer parti de leurs performances. » C’est pourquoi les banques d’investissement font appel à des spécialistes tels Aneo ou encore altimesh pour BNP Paribas CIB dont le projet GPU continue à se développer. De leur côté, les éditeurs de logiciels, conscients de l’intérêt des grands établissements financiers pour ces technologies, conçoivent leurs produits pour pouvoir fonctionner sur des architectures comprenant des GPU. « Notre outil Matlab est compatible avec les GPU depuis septembre 2010 », confirme Ascension Vizinho-Coutry, ingénieur d’application chez l’éditeur américain Mathworks, réputé pour ses outils de simulation et de calcul intensif. « Plus de 150 fonctions sont désormais ‘GPUisables’, poursuit-elle. La dernière, opérationnelle depuis septembre 2011, concerne la génération de nombres aléatoires pour Monte-Carlo. » Ainsi, selon le constructeur de processeurs graphiques NVidia, son langage de programmation GPU, Cuda, est désormais utilisé par une dizaine d’éditeurs spécialisés dans l’informatique financière dont Murex, Streambase ou encore Quantifi Solutions.

Une performance importante

« Au vu de notre expérience, il y a encore beaucoup de choses à faire dans ce domaine du calcul des risques entre l’intégration des processeurs graphiques, l’optimisation du code et des méthodes d’approximation, détaille Pascal Gibart. En termes de gain de performance, nous sommes sur un facteur 1.000 pour un prototype et 10 à 20 en production. » Selon JPMorgan, les calculs sont effectués quarante fois plus rapidement avec leur nouvelle architecture, sans préciser néanmoins le travail de réécriture du code qu’il a fallu réaliser. La généralisation des GPU dans les infrastructures bancaires n’est pas encore à l’ordre du jour pour autant. « La réussite de notre projet repose sur plusieurs facteurs bien particuliers, tient à souligner Pierre Castellani. D’abord, nous sommes partis d’une feuille blanche. Or réécrire ou optimiser le code de toute notre librairie Quant aurait demandé beaucoup plus de travail. Ensuite, les CDO ne représentent qu’une petite partie de nos portefeuilles ce qui ne nous a pas demandé de traiter une multiplicité de produits. » L’arbitrage entre les gains de performance et les économies réalisées sur les infrastructures (serveurs), d’une part, et la réécriture du code des différentes applications métiers, d’autre part, est loin d’être réalisé.

A lire aussi