ARM et Samsung collaborent pour des Cortex A76 à 3 GHz

ARM est le concepteur de la majorité des processeurs utilisés actuellement dans les téléphones, probablement aussi dans les supercalculateurs de demain, si pas nos ordinateurs personnels. Sa dernière génération de cœurs de calcul Cortex A76 est prévue pour le très haut de gamme en performance, en promettant d’être comparable à certains processeurs Intel pour des ordinateurs portables à basse consommation.

Pour arriver à ce niveau, il faut un processus de fabrication des processeurs suffisamment évolué : c’est pour cela qu’ARM s’est associé avec Samsung pour développer une architecture physique complète des cœurs Cortex A76 déjà optimisée pour les derniers processus Samsung (7LPP), qui devraient être disponibles dès la fin de cette année.

Cette architecture prédéfinie permettra d’atteindre des fréquences de plus de trois gigahertz, selon les estimations actuelles (pas de chiffre définitif avancé), avec une consommation d’énergie compatible avec des périphériques très mobiles. Elle comprend à la fois le processeur, la mémoire, ainsi que les entrées-sorties en 1,3 V et 3,3 V, pour s’adapter à un maximum de situations différentes.

Ce partenariat continuera à se développer, notamment pour la migration vers le nœud 5 nm de Samsung (5LPE), qui devrait arriver vers 2020 (même si, à ce moment-là, l’A76 sera probablement obsolète), mais aussi pour des cœurs avec une consommation énergétique plus faible, les Cortex A55.

Sources : Samsung, ARM’s 5LPE & 7LPP Partnership For Cortex A76 Will Allow 3GHz+ Frequencies, Samsung And ARM Expand Collaboration To Drive High Performance Computing, Arm and Samsung Extend Artisan POP IP Collaboration to 7LPP and 5LPE Nodes.

Advertisements

L’Europe se lance dans la conception de ses propres processeurs

L’Union européenne est bien lancée dans la course aux superordinateurs dont la puissance dépasse un exaflops, c’est-à-dire une dizaine de fois plus puissants que les meilleurs actuels, dans le cadre de H2020. Pour y arriver, simplement mettre à l’échelle les architectures actuelles ne suffira pas : la consommation énergétique de ces machines est trop importante, il n’est pas question de construire plusieurs centrales nucléaires par supercalculateur. C’est pourquoi l’Union européenne a lancé un programme pour se doter de telles machines, en finançant les programmes de recherche nécessaires. Les résultats sont déjà là, avec un premier superordinateur déjà déployé pour tester les résultats de recherche obtenus. In fine, l’objectif est d’atteindre des machines, vers 2022, qui consomment entre vingt et trente mégawatts, maximum quarante (machines et refroidissement inclus), avec un coût entre quatre cent et six cent millions d’euros l’unité.

Le consortium EPI (European processor initiative) complémente le premier programme. Lancé en mars dernier, son objectif est d’arriver à construire un superordinateur complètement européen, pour l’entièreté de ses composants et logiciels. La pièce manquante principale est le processeur de calcul, pièce maîtresse s’il en est.

Au vu de l’évolution géopolitique, ce programme n’est pas isolationniste : la plupart des supercalculateurs utilisent aujourd’hui des processeurs AMD, Cavium, Intel ou encore NVIDIA — uniquement des sociétés américaine. La Chine s’est aussi lancée dans le même genre de programme, avec Tianhe-2, suite au refus du gouvernement des États-Unis de leur fournir les puces nécessaires. L’Europe n’est pas à l’abri d’un tel camouflet, surtout avec les relations actuellement tendues. Le Japon, historiquement, n’utilise que des puces développées “en interne” et cette tradition se perpétuera avec le Post-K.

Les choix techniques sont loin d’être posés, vu l’âge du projet. Cependant, deux architectures ressortent du lot : RISC-V, complètement libre ; ARM, entièrement commerciale (et, accessoirement, anglais). Réaliser des processeurs x86 n’aurait pas beaucoup de sens, vu qu’il n’existe pas de programme de licence — contrairement à ARM, puisque les développeurs de l’architecture conçoivent certains cœurs, mais n’en fabriquent pas : ils n’ont pas d’autre choix que d’offrir un programme de licence. De plus, le fabricant français de superordinateurs Atos a une certaine expérience avec l’architecture ARM, de par son projet Mont Blanc par exemple. OpenPOWER serait un candidat raisonnable, au vu de sa licence, mais aucune entreprise ne s’est risquée à un développement dans un cadre HPC en Europe.

Deux types de processeurs seront développés : l’un plutôt pour les superordinateurs (assez générique), l’autre aussi pour les voitures (pour accélérer plus spécifiquement certaines opérations, comme l’inférence dans les réseaux neuronaux). Ils n’utiliseront pas forcément la même architecture (on pourrait voir le premier en ARM et le second en RISC-V), mais seront développés en parallèle pour réduire les coûts. Les machines déployées utiliseront une architecture modulaire, chaque partie étant spécialisée dans un type de calcul.

Le projet prévoit d’aller vite : la première génération de puces devrait être prête vers 2020-2021, avec les premiers systèmes (qui n’atteindront probablement pas l’exaflops) entre 2021 et 2022. La deuxième génération pourrait arriver deux ans plus tard, vers 2022-2023, des machines d’un exaflops devant arriver dès la fin 2023. Pendant ce temps, les processeurs pour l’automobile devraient être disponibles comme prototypes dès la fin 2021 et comme produits finis dès la fin 2024.

Le projet sera financé à hauteur de cent vingt millions d’euros par les pouvoirs publics, vingt-trois partenaires industriels et chercheurs investiront aussi leurs moyens. On compte notamment Atos (assembleur de machines), BSC, CEA, Jülich Supercomputing Centre (trois centres de recherche hébergeant des superordinateurs) et STMicroelectronics (fabricant de semiconducteurs),

Sources : European Program to Develop Supercomputing Chips Begins to Take Shape, European Processor Initiative: consortium to develop Europe’s microprocessors for future supercomputers.

JUWELS : l’Allemagne se dote d’un nouveau superordinateur

Le nouveau supercalculateur allemand, JUWELS (Jülich wizard for European leadership science), vient d’être lancé, il exécute pour le moment l’une des quatre-vingt-sept tâches qui ont été acceptées : il sera entièrement occupé à ces tâches pour les mois qui viennent, ce qui est un taux de remplissage très élevé.

JUWELS atteint “à peine” 6,18 Pflops (selon le test Linpack), mais est le supercalculateur allemand le plus puissant à ce jour. Il se classe à la vingt-troisième position du classement des superordinateurs, juste derrière l’Espagne. Sa particularité, cependant, est d’être issu d’un projet de recherche européen, DEEP (dynamical exascale entry platform). Il a été développé en collaboration avec Atos (France, pour le matériel) et ParTec (Allemagne, pour le logiciel) avec une architecture modulaire. L’objectif est de prévoir des machines à l’échelle de l’exaflops, tout en restant dans des limites budgétaires et énergétiques acceptables.

La partie qui vient d’être inaugurée est le premier “module”, de type grappe de calcul. Il s’agit de deux mille cinq cent septante-cinq nœuds de calcul, chacun disposant d’un processeur Intel Xeon de génération Skylake à vingt-quatre cœurs (une machine Atos Bull Sequana X1000). Quarante-huit nœuds disposent de cartes graphiques, à raison de quatre NVIDIA V100 par nœud, plus quatre nœuds dédiés à la visualisation, avec une carte NVIDIA P100 chacune. Ces machines sont reliées par un réseau Mellanox EDR InfiniBand. L’un des points forts de cette machine Atos est son refroidissement à eau tiède, qui limite les besoins en générateurs de froid : cette différence fait que JUWELS consomme bien moins d’énergie que son prédécesseur, JUQUEEN.

Ce premier module est prévu pour des tâches HPC traditionnelles, qui fonctionnent par mise à l’échelle horizontale (scale out). Ainsi, il peut accueillir tant des tâches à exécuter en série (sans parallélisme), en parallèle sur une machine (mémoire partagée) ou sur plusieurs machines (échange de messages). Le deuxième module sera plus spécifique : l’amplificateur sera prévu pour des algorithmes massivement parallèles (même si chaque cœur n’a pas une grande puissance de calcul — ce qui permet de réduire la consommation énergétique, par exemple). À l’origine, cette deuxième tranche devait utiliser les processeurs Intel Xeon Phi, mais la prochaine génération ne verra jamais le jour.

Pour exploiter au mieux la performance de ces futures différentes parties du supercalculateur, ParTec a développé ParaStation, qui analyse le code à exécuter et l’envoie sur le matériel le plus approprié. Ainsi, les parties les plus complexes du code seront exécutées sur la grappe de calcul (actuellement déployée), tandis que la partie la plus parallèle bénéficiera de l’amplificateur.

Source : JUWELS Becomes Germany’s Most Powerful Supercomputer, Fast and Innovative: Jülich Supercomputer is a New Development from Europe.

Selon une analyse détaillée, les processeurs ARM ont un futur prometteur pour le HPC

À l’instar de l’Espagne, le Royaume-Uni s’est lancé dans l’analyse de plusieurs types de processeurs pour ses futurs superordinateurs. Notamment, Isambard (un superordinateur en cours de construction) utilisera uniquement des puces ARM, des Cavium ThunderX2 précisément, afin d’évaluer cette technologie. Ce choix n’est pas dénué de sens : l’architecture ARM est très utilisée dans le monde de l’embarqué (notamment pour les téléphones portables) pour sa bonne performance avec une efficacité énergétique très haute. Le Japon ne s’y est pas trompé, son prochain superordinateur l’exploitera.

Isambard est une machine de dix mille processeurs ARM (moins puissante qu’Astra, récemment déployée aux États-Unis). Son exploitant, GW4 (un rassemblement de quatre universités anglaises), l’a comparée aux supercalculateurs existants sur différentes mesures. Leurs résultats montrent que, en termes de puissance brute, l’architecture ARM n’est pas la plus compétitive, mais qu’elle pourrait se tailler une part de marché importante. Trois processeurs sont en lice :  Cavium ThunderX2 (ARM, trente-deux cœurs), Intel Xeon Broadwell (x86, vingt-deux cœurs) et Intel Xeon Skylake (x86, vingt-huit cœurs).

La comparaison indique, sans surprise, que les processeurs d’Intel sont bien meilleurs quand il s’agit d’effectuer des opérations en virgule flottante. Notamment, la génération Skylake propose les instructions AVX2, qui peuvent travailler sur des vecteurs de cinq cent douze bits d’un seul coup : côté ARM, cette longueur est limitée à cent vingt-huit bits (deux nombres en virgule flottante avec une double précision, la plus utilisée en calcul scientifique).

Au contraire, les processeurs Intel sont déficients du côté de la mémoire : la bande passante du ThunderX2 est presque vingt-cinq pour cent supérieure à celle de la génération Skylake. De fait, le ThunderX2 dispose de huit canaux d’accès à la mémoire (six côté Skylake). Les caches sont souvent à l’avantage des processeurs Intel. Ceci signifie que ces derniers sont préférables pour tous les codes de calcul extrêmement intenses en opérations en virgule flottante (idéalement, toutes les données pouvant tenir dans les caches), mais pas en opérations mémoire, où le ThunderX2 brille bien plus.

Un autre avantage des processeurs ARM est leur prix. Bien que celui des processeurs utilisés pour Isambard n’a pas été dévoilé, il a été décrit comme “réduit d’un facteur deux à trois”. Le rapport performance-prix est donc bien plus intéressant — un facteur qui sera privilégié par certains acteurs de moindre taille.

La conclusion principale de cette analyse est que les processeurs ARM ont toute leur place dans les infrastructures HPC modernes, selon les cas d’utilisation prévus. Il est illusoire d’espérer obtenir une puce parfaite, capable d’effectuer un très grand nombre d’opérations par seconde et de disposer d’un très grand nombre de canaux d’accès à la mémoire, puisque le nombre de transistors est limité par processeur (à moins d’augmenter fortement la quantité de silicium qui est utilisée, ce qui ferait grimper fortement les prix).

Source : Benchmarks in Hand, UK Academics See Promising Future for Arm Chips in HPC.

Fujitsu dévoile son prototype de processeur ARM pour superordinateur d’un exaflops

La course à l’exaflops (un milliard de milliards d’opérations en virgule flottante par seconde) continue, après les projets européens (des milliards d’euros budgétés) et américains (Summit arrive en production, d’autres suivront bientôt). Cette fois-ci, c’est au tour du Japon d’être à l’honneur, Fujitsu présentant ses prototypes de processeurs pour Post-K, le premier superordinateur japonais d’un exaflops. La différence par rapport aux concurrents, c’est que Fujitsu utilise l’architecture ARM pour ses processeurs, pas l’habituel x86 (utilisé notamment par les Intel Xeon des machines américaines) ou les cartes graphiques. Le mouvement était annoncé de longue date, voici qu’il arrive au stade de prototype.

La machine doit arriver en production à l’horizon 2021 au centre de recherche RIKEN. Certaines applications déployées sur les superordinateurs actuels sont utilisées pour tester les prototypes actuels de puces ARM, l’objectif étant que le Post-K offre une performance largement supérieure à celle des machines actuelles. Pour ce faire, Fujitsu utilisera les extensions vectorielles d’ARMv8-A, nommées SVE (scalable vector extension) : les instructions pourront s’exécuter sur des registres dont la longueur varie entre cent vingt-huit et deux mille quarante-huit bits (alors que, côté x86, la génération actuelle de processeurs Intel est limitée à cinq cent douze bits ; le superordinateur K est limité à cent vingt-huit bits).

Ce processeur fonctionnera principalement avec des nombres à virgule flottante sur soixante-quatre bits (la double précision habituelle), mais également en demi-précision (seize bits) : la machine sera prévue tant pour les applications scientifiques habituelles (où la précision est très importante) que pour l’apprentissage profond (où la vitesse d’exécution des opérations prime).

Au niveau matériel, chaque puce devrait être équipée de quarante-huit cœurs, plus deux à quatre cœurs pour gérer les opérations qui ne relèvent pas du calcul pur : les entrées-sorties, la communication MPI, par exemple. Chaque nœud de calcul ne devrait être constitué que d’un seul de ces processeurs, une étagère faisant trois cent quatre-vingts-quatre nœuds. Le nombre d’étagères pour Post-K n’est pas encore connu… D’autres détails matériels devraient être dévoilés petit à petit, comme la consommation électrique de ce matériel.

Source : Fujitsu Completes Prototype of ARM Processor That Will Power Excascale Supercomputer.

Cambricon lance un processeur spécifiquement prévu pour l’intelligence artificielle

Huawei a travaillé avec Cambricon pour développer la partie accélération pour l’intelligence artificielle pour ses derniers processeurs de téléphone, le Kirin 970 (utilisé notamment pour le Huawei P20). Cette partie porte le doux nom de Cambricon-1A et, depuis son annonce l’année dernière, peu de détails étaient disponibles. Cambricon a depuis décidé de continuer la course seul, avec un processeur distinct prévu pour l’intelligence artificielle. Selon les déclarations actuelles, ce processeur serait basé sur le cœur Cambricon-1A du Kirin 970, mais à une bien plus grande échelle.

Le MLU-100 peut consommer une puissance de quatre-vingts watts pour effectuer des calculs à raison de soixante-quatre téraflops en demi-précision (seize bits) ou cent vingt-huit téraops sur des entiers à huit bits. Ces formats de nombre sont relativement peu précis, mais sont très souvent utilisés pour l’implémentation des réseaux neuronaux les plus performants. Le processeur fonctionne normalement à 1 GHz, mais peut monter jusque 1,3 GHz : il pourra alors développer une puissance de calcul de plus de quatre-vingts téraflops (FP16) ou cent soixante-six téraops (INT8), avec une consommation de cent dix watts (une bien moins bonne efficacité énergétique).

Ces caractéristiques rappellent celles des TPU de Google, qui visent le même marché, mais avec des formats de nombre plus exotiques. La grande différence est cependant qu’il sera possible d’acheter des processeurs de Cambricon (notamment sous la forme d’une carte d’extension PCIe), alors que Google ne s’autorise qu’à en louer de la puissance…

Par rapport aux cartes graphiques de NVIDIA, notamment la dernière génération Volta, on retrouve une puissance de calcul légèrement supérieure, mais avec une consommation bien supérieure — et une programmabilité bien différente. Aussi, quand NVIDIA et Google utilisent de la mémoire HBM2, Cambricon se limite à de la DDR4, alors que bien des applications d’apprentissage profond à grande échelle sont plus vite limitées par la bande passante de la mémoire que par la puissance de calcul.

Il sera bientôt possible d’acheter des machines avec ces accélérateurs déjà installés, par exemple les serveurs ThinkSystem SR650 de Lenovo. D’autres collaborent déjà avec Cambricon pour en profiter, comme Sugon ou iFlytek — toutes trois des sociétés chinoises, tout comme Cambricon.

Source et images : Cambricon, Makers of Huawei’s Kirin NPU IP, Build A Big AI Chip and PCIe Card.

La bibliothèque de déchargement d’exécution de LLVM ne sera plus développée

LLVM dispose depuis un certain temps d’une bibliothèque pour exécuter du code OpenMP sur un accélérateur, principalement les coprocesseurs Intel Xeon Phi (qui tombent en désuétude). liboffload était une contribution d’Intel pour exploiter autant que possible ses coprocesseurs hautement parallèles (une soixantaine de cœurs par processeur, chacun extrêmement programmable, au contraire des processeurs graphiques).

liboffload est une vieille copie de l’implémentation d’OpenMP d’Intel, mais elle n’avait plus été mise à jour depuis des années — Intel continuant à développer sa propre copie. Le pire était que liboffload ne compilait plus dans tous les cas… et a toujours posé des problèmes d’intégration avec le système de compilation de LLVM.

Ce code était très peu utilisé, en réalité : la majorité des processeurs Xeon Phi récents sont des processeurs principaux, pas des cartes d’extension. En d’autres termes, le système d’exploitation est directement lancé sur ce processeur hyper parallèle : il n’y a pas besoin d’une bibliothèque particulière pour lancer le code sur un accélérateur externe.

De plus, libomptarget devient de plus en plus mature. Cette bibliothèque est bien plus généraliste que liboffload (elle peut aussi exploiter des cartes graphiques à travers CUDA, par exemple), tout en implémentant toujours la norme OpenMP.

Ainsi, liboffload avait perdu la plupart de son intérêt. Intel n’a d’ailleurs eu aucun commentaire à faire sur la liste de diffusion du projet LLVM.

Source : [Openmp-dev] Removing liboffload from repository.