La présentation est en train de télécharger. S'il vous plaît, attendez

La présentation est en train de télécharger. S'il vous plaît, attendez

P.-Fr. Lavallée – Journées Calcul Scientifique LJLL – juin 2015

Présentations similaires


Présentation au sujet: "P.-Fr. Lavallée – Journées Calcul Scientifique LJLL – juin 2015"— Transcription de la présentation:

1 P.-Fr. Lavallée – Journées Calcul Scientifique LJLL – 10-11 juin 2015
Institut du développement et des ressources en informatique scientifique Quelles architectures pour l’Exascale ? Quel impact sur les codes ? P.-Fr. Lavallée – Journées Calcul Scientifique LJLL – juin 2015 1

2 P.-Fr. Lavallée – Journées Calcul Scientifique LJLL – 10-11 juin 2015
L’Exascale en 2020 ? Si on extrapole le TOP500… Oui c’est possible si on est optimiste ! P.-Fr. Lavallée – Journées Calcul Scientifique LJLL – juin 2015

3 P.-Fr. Lavallée – Journées Calcul Scientifique LJLL – 10-11 juin 2015
L’Exascale en 2020 ? Cependant, différentes lectures plus pessimistes sont possibles, Extrapolation sur une échelle semi-log, petite erreur, grande conséquence… P.-Fr. Lavallée – Journées Calcul Scientifique LJLL – juin 2015

4 P.-Fr. Lavallée – Journées Calcul Scientifique LJLL – 10-11 juin 2015
L’Exascale en 2020 ? Cependant, différentes lectures plus pessimistes sont possibles, Suivant la référence P.-Fr. Lavallée – Journées Calcul Scientifique LJLL – juin 2015

5 P.-Fr. Lavallée – Journées Calcul Scientifique LJLL – 10-11 juin 2015
L’Exascale en 2020 ? Cependant, différentes lectures plus pessimistes sont possibles… Stagnation inquiétante… Extrait du TOP500 List Highlights : « Total combined performance of all 500 systems has grown to 309 Pflop/s, compared to 274 Pflop/s in June and 250 Pflop/s one year ago. This increase in installed performance also exhibits a noticeable slowdown in growth compared to the previous long-term trend. » P.-Fr. Lavallée – Journées Calcul Scientifique LJLL – juin 2015

6 P.-Fr. Lavallée – Journées Calcul Scientifique LJLL – 10-11 juin 2015
L’Exascale en 2020 ? La loi de Moore, toujours d’actualité, mais pour encore combien de temps ? Durant les années 90, le gain de performance provient principalement de l’augmentation de la clock, c’est la période du « free lunch »… Depuis 2005, pour des raisons énergétiques, le gain de performance provient de la multiplication du nombre de cœurs d’exécution, mais la puissance par cœur stagne voire diminue. Sans adaptation des codes (parallélisation), pas ou peu de gain en performance. Depuis 2010, apparition des architectures hybrides accélérées ou many-cores. Le design actuel des architectures est quasi inchangé depuis 60 ans, et on arrive aux limites de ces technologies… L’exascale dans un enveloppe de 20 MW (1MW = 1M$/an), une contrainte extrêmement forte… Aujourd’hui, 90% du temps et de l’énergie est utilisée pour bouger les données d’un niveau de mémoire à un autre ! P.-Fr. Lavallée – Journées Calcul Scientifique LJLL – juin 2015

7 P.-Fr. Lavallée – Journées Calcul Scientifique LJLL – 10-11 juin 2015
Les défis à relever Extrait du rapport du DOE - Research Challenges Top Ten Exascale (02/2014) « Numerous reports over the past years have documented the technical challenges and the non-viability of simply scaling existing computer designs to reach exascale. » Principaux challenges techniques : Efficacité énergétique (1 Eflops avec 20 MW  50 Gflops/W !) Capacité et bande passante mémoire Technologie d’interconnexion (performance et efficacité énergétique relative au mouvement des données) Parallélisme extrême (10~100 M de threads d’exécution) Gestion de la donnée et Big Data (traitement des grandes masses de données) Productivité scientifique (nouveaux outils et environnements de développement adapté au parallélisme massif) La tolérance aux pannes (hardware ou software) P.-Fr. Lavallée – Journées Calcul Scientifique LJLL – juin 2015

8 La contrainte énergétique
Extrait du rapport du DOE - Research Challenges Top Ten Exascale (02/2014) « Without dramatic reformulation of hardware together with software, exascale systems are projected to consume 100s of megawatts, and few existing HPC applications will be able to scale beyond a tenth of an exaflop. » Extrapolation à partir de #1 TOP500 Tianhe-2, cœurs, Rmax=33.86 Pflop/s, Rpeak=54.9 Pflop/s, Power 17.8 MW Il faut un facteur 18.2 en terme de performance, soit une consommation de 324 MW !!! Extrapolation à partir de #1 GREEN500 GPU AMD FirePro S9150 (5.2 Gflops/W) Il manque un facteur 9.6 en terme d’efficacité énergétique, soit une consommation de 192 MW !!! P.-Fr. Lavallée – Journées Calcul Scientifique LJLL – juin 2015

9 P.-Fr. Lavallée – Journées Calcul Scientifique LJLL – 10-11 juin 2015
Focus sur la mémoire Pour soutenir une intensité arithmétique de 1 flop/byte sur une architecture exaflopique avec une enveloppe énergétique de 20 MW (dont 10 MW pour la mémoire), alors le déplacement d’un bit de donnée depuis la mémoire ne doit pas consommer plus de 1 picojoule ! Pas de solution avec une simple évolution des technologies actuelles. Il faudra un (ou plusieurs sauts/révolutions technologiques) comparable à celle, en 1990, du CMOS en remplacement des technologies TTL (Transistor Transistor Logic) et ECL (Emitter Coupled Logic) pour atteindre l’objectif. P.-Fr. Lavallée – Journées Calcul Scientifique LJLL – juin 2015

10 Exemples de technologie de rupture
Pour le mémoire : la MRAM La MRAM (Magnetic Random Access Memory) est une mémoire non volatile de type magnétique. Elle est souvent considérée comme la mémoire « idéale » alliant rapidité, débit, capacité et non-volatilité, ce qui peut amener à penser qu'elle entraînera la fin de la hiérarchie des mémoires Consomme 20 fois moins que la technologie actuelle (DRAM) P.-Fr. Lavallée – Journées Calcul Scientifique LJLL – juin 2015

11 Exemples de technologie de rupture
Pour les réseaux d’interconnexion : la photonique Remplacer les fils de cuivre par de la fibre et utiliser la lumière pour transporter l’information Le gain : facteur 30 en bande passante pour 1/10 de la consommation et un cout identique à l’existant. La photonique détruit les distances et rend obsolète les contraintes de proximité entre la mémoire et les coeurs de calcul ! P.-Fr. Lavallée – Journées Calcul Scientifique LJLL – juin 2015

12 Les projets annoncés (Intel)…
Cori (NERSC) June 2016 : 64 Cabinets of Cray XC System Over 9,300 ‘Knights Landing’ compute nodes Next generation Xeon-Phi, >3TF peak Single socket processor - Self-hosted, not a co-processor, not an accelerator Greater than 60 cores per processor with support for four hardware threads each; more cores than current generation Intel Xeon Phi Intel® "Silvermont" architecture enhanced for high performance computing 512b vector units (32 flops/clock – AVX 512) High bandwidth on-package memory, up to 16GB capacity with bandwidth projected to be 5X that of DDR4 DRAM memory Over 1,900 ‘Haswell’ compute nodes (Data partition) Cray Aries Interconnect Lustre File system (28 PB capacity, 432 GB/sec peak performance) NVRAM “Burst Buffer” for I/O acceleration MPI+OpenMP preferred programming model – << Should enable NERSC users to make robust code changes >> Using Edison to Help Prepare for Cori You can use Edison today to start preparing for Cori.  Most codes on  Edison assign a single MPI rank to each processing element; however, on Cori, this may not be possible, due to memory limitations.  On Cori it will be necessary to use less MPI parallelism and more OpenMP parallelism.  In many codes, OpenMP threads can be added incrementally, via pragmas or compiler directives.  In other codes, more restructuring may be needed.  You should try adding OpenMP to your code on Edison today.  NERSC has collected some useful information and tutorials in the OpenMP Resources page. Think about how your problem can be decomposed using thread-level parallelism, meaning independent threads of execution within each MPI process.  Doing this on Edison is not only a good preparation for Cori; it may also improve performance on Edison and/or allow you to run larger simulations. Source : P.-Fr. Lavallée – Journées Calcul Scientifique LJLL – juin 2015

13 Les projets annoncés (Intel)…
Argonne (Theta 2016 – Aurora 2018) M$... P.-Fr. Lavallée – Journées Calcul Scientifique LJLL – juin 2015

14 Les projets annoncés (OpenPOWER)
Coral (Summit - Oak Ridge and Sierra - Lawrence Livermore) Transitioning to Summit: Preparing Titan Users for Fivefold Computing Power Summit will provide revolutionary performance by way of evolutionary changes to the current Titan hybrid architecture, making Summit an ideal follow-on system to Titan. By developing and refactoring applications to improve performance portability on accelerated architectures, Titan users will be better positioned to take advantage of Summit, as well as other next-generation leadership computing resources, and beyond. Users can create applications that explore performance portability and exploit untapped parallelism by: 1- Using accelerated programming libraries whenever possible 2- Preferring high-level compiler directives such as OpenMP/OpenACC over low-level frameworks such as CUDA or OpenCL 3- Exposing as much node-level parallelism as possible 4- Relying on a suite of development tools to maximize parallelism MPI+OpenMP(OpenACC) preferred programming model P.-Fr. Lavallée – Journées Calcul Scientifique LJLL – juin 2015

15 P.-Fr. Lavallée – Journées Calcul Scientifique LJLL – 10-11 juin 2015
Les projets annoncés… HP The Machine (2019 ?) Le New York Times a rapporté la semaine dernière que HP avait complètement revu le concept de « La Machine » pour se distancer des memristors qui sont très loin d’être commercialisés. Réécriture d’un nouveau système d’exploitation en cours, aucune information sur les modèles de programmation associés à cette architecture novatrice… P.-Fr. Lavallée – Journées Calcul Scientifique LJLL – juin 2015

16 Quel parallélisme dans les codes ?
Domain Parallelism Parallélisation inter-nœud avec MPI (échange de messages) Thread Parallelism Parallélisation intra-nœud avec OpenMP (directives) Data Parallelism Vectorisation SIMD (portable avec OpenMP) Instruction Level Parallelism Exécution concurrentes d’instructions indépendantes (hardware) Offload (if accelerated architecture)… OpenMP or OpenACC P.-Fr. Lavallée – Journées Calcul Scientifique LJLL – juin 2015

17 P.-Fr. Lavallée – Journées Calcul Scientifique LJLL – 10-11 juin 2015
Impact sur les codes Minimiser les transferts des données Prendre en compte les hiérarchies et les aspects NUMA des différents niveaux de mémoire disponibles (affinité mémoire, affinité processeur, binding, …) Prendre en compte l’évolution exponentielle du parallélisme interne à un nœud (coeurs d’exécution, thread hardware, …) Pas de performance sans vectorisation. Impacte fortement les structures de données utilisées dans certains codes (transformation de tableaux de structures en structure de tableaux) => gros travail de réécriture des codes… L’approche MPI+OpenMP+SIMD (+Offload) est mature et pérenne, elle est à privilégier aussi bien sur architectures Many-core que hétérogènes accélérées. L’aspect optimisation de l’empreinte mémoire est au moins aussi important que l’aspect performance. D’autres modèles de parallélisation (à base de graphe de tâches par exemple) sont des alternatives à envisager à moyen terme L’utilisation de bibliothèques optimisées pour ces nouvelles architectures est la voie à privilégier lorsque cela est possible P.-Fr. Lavallée – Journées Calcul Scientifique LJLL – juin 2015

18 P.-Fr. Lavallée – Journées Calcul Scientifique LJLL – 10-11 juin 2015
En conclusion Beaucoup de défis techniques restent à réaliser pour construire une architecture exaflopique consommant de l’ordre de 20 MW (cœurs d’exécution, mémoire, réseau d’interconnexion, …) Plusieurs candidats pour ces technologies de rupture sont déjà opérationnels dans les laboratoires de recherche, d’autres pas encore... Pour les utilisateurs, quelque soit l’architecture cible, un travail conséquent d’adaptation des codes de calcul sera nécessaire pour obtenir des performances : Exposer plus de parallélisme intra-nœud dans les applications Augmenter le caractère vectoriel SIMD des applications Gérer l’organisation hiérarchique de la mémoire Utiliser localement des directives pour les architectures hybrides accélérées P.-Fr. Lavallée – Journées Calcul Scientifique LJLL – juin 2015


Télécharger ppt "P.-Fr. Lavallée – Journées Calcul Scientifique LJLL – juin 2015"

Présentations similaires


Annonces Google