En utilisant notre site, vous consentez à ce que des cookies soient utilisés à des fins d’analyse, de pertinence, et de publicité. Modifiez vos préférences.

Les défis scientifiques du calcul exaflopique

Publié le 03/10/2016
defis-scientifiques-calcul-exaflopique-data-center

Article rédigé par Christophe Denis, CMLA, ENS Cachan
Également Chef de Projet à EDF R&D

 

 

 

 

 

 

Calculer toujours plus vite

L’augmentation de la puissance de calcul des super-calculateurs est essentielle pour produire des simulations numériques toujours  plus complexes. Cette puissance de calcul nourrit l’espoir de réduire la distance entre l’approximation de la simulation et le phénomène physique étudié. Elle devient également stratégique pour l’industrie et les services pour faire face à la diversité des enjeux techniques, financiers et concurrentiels. Par exemple, dans le secteur automobile, les marges de gain de productivité se situent maintenant essentiellement lors de la phase de conception d’un véhicule utilisant massivement des ressources de calcul.

 

« Free Lunch …

Durant les dernières décennies, les fabricants de super-calculateurs ont utilisé les deux leviers suivants pour répondre à la demande effrénée de puissance de calcul :

  • Levier 1 : augmentation de la performance intrinsèque des composants constituant le super-calculateur, par exemple au niveau de l’augmentation de la vitesse des micro-processeurs ;
  • Levier 2 : ajout de composants dans le super-calculateur, par exemple multiplication du nombre de micro-processeurs.

Par exemple, le constructeur Intel utilise un modèle de développement des micro-architectures de calcul appelé « tick-tock ». La mise au point d’un micro-processeur plus performant  (phase « tick » correspondant au levier 1) est suivie par le développement d’une micro-architecture possédant davantage de micro-processeurs (phase « tock » correspondant au levier 2). Un autre levier existe mais cette fois-ci au niveau logiciel en réduisant son temps de calcul en modifiant les algorithmes du code source. Toutefois, une optimisation fine de la performance d’un code a été bien souvent jugée économiquement non rentable puisque qu’un prochain super-calculateur allait offrir une plus grande puissance de calcul. Cette activité a donc été principalement effectuée dans un cadre de recherche académique ou pour certaines applications industrielles nécessitant une très forte puissance de calcul.

 

… is Over  » : profonde mutation des super-calculateurs en cours

En 2005, Herb Sutter, spécialiste mondial de la programmation concurrente et du langage C++, sonne le glas de la course à la performance « bon marché » pour les codes de calcul.  La course à la performance des dernières décennies a été possible grâce aux progrès techniques obtenus sur la diminution de la finesse de gravure des micro-processeurs. Cette diminution est maintenant techniquement complexe en raison des limites atteintes au niveau de la dissipation thermique. Pourtant, la demande effrénée de puissance de calcul est encore et plus que jamais d’actualité pour :

  • Obtenir des résultats de calcul toujours plus proches de la physique étudiée (utilisation de modèles couplées, multi-physiques et multi-échelles) ;
  • Combler le manque d’efficacité des codes de calcul : la majorité des codes n'utilisant qu'une faible partie des ressources allouées en raison du  « Free Lunch ».

La poursuite de l’augmentation de la puissance des super-calculateurs est alors possible d’une part en multipliant le nombre de ses micro-architectures et d’autre part et en ajoutant à l’intérieur des micro-architectures des accélérateurs matériels, par exemple des GPU’s. Les premiers super-calculateurs appelés exaflopiques pourront calculer à l’horizon 2020 une puissance crête d’un milliard de milliards d’opérations par seconde. Leurs architectures seront très fortement distribuées, hétérogènes et contenant de l’ordre du million de coeurs de calculs. Il est alors indispensable de limiter les consommations électriques des super-calculateurs puisqu’elles ne peuvent pas augmenter dans les mêmes proportions que la puissance de calcul. Le transfert de données représente l’activité la plus énergivore d’un calcul. Des solutions matérielles sont actuellement étudiées par les constructeurs pour réduire la consommation électrique notamment lors de transfert de données. La limitation de la consommation électrique peut être aussi traitée au niveau logiciel.

 

 

Défis scientifiques au niveau logiciel

L’évolution technologique des super-calculateurs imposent de nouveaux défis scientifiques au niveau du logiciel pour que les codes scientifiques utilisent efficacement les futures ressources de calcul. Il sera nécessaire de procéder à des modifications plus ou moins profondes selon l’état du code de calcul. La réécriture complète du code peut être choisie si ces modifications s’avèrent trop complexes et non rentables économiquement. Les principaux défis scientifiques sont :

1. Limitation de la consommation électrique

Le transfert de données constitute la part la plus importante de la consommation électrique d’une simulation. La limitation de cette consommation impose donc de choisir des algorithmes  privilégiant  la localité des données. La réduction de la précision des nombres flottants,  dans certaines parties du code et sans affecter la précision des résultats, permet aussi de réduire la consommation électrique. Il s’agit par exemple d’utiliser pour certains problèmes des algorithmes en mixant l’utilisation de la simple et de la double précision.

2. Gestion efficace de la tolérance aux fautes

L’utilisation d’un nombre toujours croissant de micro-processeurs dans les super-calculateurs entraine inéluctablement une augmentation de sa probabilité de défaillance. En l’absence de techniques de tolérance aux fautes, la défaillance peut entrainer l’arrêt du code de calcul ou rendre son  fonctionnement chaotique. Des analyses statistiques montrent que le temps moyen de fonctionnement avant panne est inversement proportionnel au nombre de processeurs utilisés. Il s’agit donc d’un indicateur  qui, dans le contexte du calcul exaflopique, devient aussi important que l’accélération d’un code de calcul. Le défi est de développer des méthodes de gestion de la tolérance aux fautes entrainant un surcoût limité en termes de temps de calcul, de consommation énergétique et de mémoire.

3. Evaluation et optimisation de la performance

Durant les dernières décennies, la paradigme de programmation visait à diminuer les volumes de calcul au détriment  de la localité des données. Ce paradigme sera de moins en moins efficace sur les futures architectures. L’établissement de paradigme de programmation figé devient difficile en raison de la complexité  et de l’hétérogénéité croissante des super-calculateurs. Il existe donc un besoin de méthodologies et d’outils d’évaluation fine de la performance. Au niveau de l’optimisation, l’utilisation de bibliothèques de calcul dédiées pour certaines micro-architectures deviendra incontournable. Enfin, la gestion efficace des entrées-sorties d’un code de calcul sera crucial pour obtenir de bonnes performances.

4. Vérification de la précision numérique des simulations

L’arithmétique flottante est la source de perte de précision numérique en raison principalement de la propagation des erreurs d'arrondi et de pertes de propriétés arithmétiques. Plusieurs exécutions d'une même  simulation numérique peuvent produire des résultats différents. Ce phénomène sera amplifié dans un contexte de calcul exaflopique où potentiellement un milliard de milliards d’opérations pourront être exécutées par seconde. Il est nécessaire de développer des méthodologies et des outils logiciels pour déterminer, automatiquement et sans modifier le code source de l’application, des statistiques  sur la précision numérique des résultats. Enfin, ces outils participeront à la recherche d’un bon compromis entre la performance et la précision numérique d’une simulation à large échelle, tout en limitant la consommation électrique requise

 

En conclusion, la profonde modification architecturale des super-calculateurs pose de sérieux défis scientifiques au niveau du logiciel. La résolution de ces défis imposent des collaborations fortes entre académiques et industriels. Un effort  de formation est également indispensable puisque ce type d'architecture bouleverse les paradigmes de programmation enseignés dans le passé. Enfin, certaines activités jugées encore parfois non prioritaires comme le développement efficace  de la reprise de calcul, l’optimisation de la performance et la verification numérique seront mis au centre de l’enjeu. Nul doute que le fruit de passionnants sujets de recherche va permettre aux industriels d’exploiter efficacement le futur calcul exaflopique.

 

Biographie

Christophe DENIS a acquis depuis ses premiers travaux de recherche en 2000, une expertise dans le domaine du développement, l’optimisation et la validation de logiciels de calcul industriels. Son activité professionnelle a lieu à la fois  d’une part dans un contexte académique au CMLA (ENS Cachan) et d’autre part dans un contexte industriel en pilotant un projet de développement d’un code de calcul  à EDF R&D et en menant des activités de consultant scientifique. Il est responsable scientifique depuis 4 ans de la formation « Contrôler et améliorer la qualité du logiciel de calcul  industriel » qu’il a créée à  l’Ecole Polytechnique Executive Education. Il co-développe actuellement le logiciel Verificarlo utilisé pour la vérification automatique de la précision numérique de codes de calcul industriels.

Rédigé par: Anonyme

Intéressé(e) par nos formations ?

Téléchargez nos catalogues
Sélectionnez le ou les catalogues.
Select the catalogs.
  1. Calendrier des programmes
  2. Catalogue Complet 2017
  3. Catalogue digital
  4. Catalogue enjeux énergétiques
  5. Catalogue innovation et recherche
  6. Catalogue management, leadership, communication
  7. Catalogue performance économique
  8. Catalogue projets et systèmes
  9. Catalogue sciences de l'ingénieur

Veuillez remplir le formulaire ci-dessous. Vous recevrez votre catalogue directement dans votre boite email.
Please fill out the form below to receive your Catalogue by email.

Télécharger / Download
Téléchargement de la plaquette / Download the booklet

    Veuillez remplir le formulaire ci-dessous. Vous recevrez votre catalogue directement dans votre boite email.
    Please fill out the form below to receive your Catalogue by email.

    Télécharger / Download

    Please fill out the form below to download the Application File.

    Download