Le Top 500 des supercalculateurs de novembre 2014

Posté par (page perso) . Édité par Davy Defaud, BAud, eggman, Nÿco, yPhil, Benoît Sibaud et ZeroHeure. Modéré par ZeroHeure. Licence CC by-sa
Tags :
28
23
nov.
2014
Technologie

Le quarante‐quatrième Top 500 des supercalculateurs mondiaux est sorti en novembre 2014.

Rappelons que le Top 500 se base sur une soumission volontaire (de nombreuses machines puissantes mais classifiées ne participent pas à la course) et sur un comparateur de performances spécifique extrêmement parallélisable, le code LINPACK, qui concerne la résolution de systèmes d’équations linéaires.

Les Top 500 se suivent et se ressemblent ?

Pour la quatrième fois consécutive, le supercalculateur Tianhe-2 est en tête de liste avec son habituel score de 33,86 pétaFLOPS.

L’évolution par pays

Rien de nouveau sous le soleil (nihil novi sub sole), hormis une entrée en dixième place d’un Cray CS-Storm à 3,57 pétaFLOPS d’un site gouvernemental états‐unien non représenté auparavant.

Statistiques sur la liste

C’est HP qui est en tête de liste, suivi de près par IBM (plus de 60 % à eux deux), Cray, SGI et Bull étant loin derrière (et Dell et Fujitsu, enterrés).

Les systèmes d’exploitation

Il reste un seul Windows, très en retrait. Le tableau synoptique est très clair, démontrant l’hégémonie des GNU/Linux dans le domaine des hautes performances :

Système   Q  P.D.M  GFLOPS mesurés  GFLOPS théoriques  Nb de cœurs
GNU/Linux 485 97,0 % 303 377 333 446 928 067 22 851 693
Unix 13 2,6 % 5 101 679 6 118 142 196 224
Mixed 1 0,2 % 190 900 222 822 65 536
Windows 1 0,2 % 180 600 233 472 30 720
  • # Pourquoi Linux est le plus adapté aux calculs ?

    Posté par . Évalué à 3. Dernière modification le 23/11/14 à 13:52.

    Question naïves :

    Pourquoi Linux est-il le plus adapté aux calculs ? Si je met un système windows sur le supercalculateur à 3,5 petaflops/s mes calculs seront moins rapides ?

    • [^] # Re: Pourquoi Linux est le plus adapté aux calculs ?

      Posté par (page perso) . Évalué à 10.

      Le problème n'est pas d'avoir 3,5 petaflops mais que ce soit réparti sur une architecture avec des milliers de nœuds, avec de la mémoire répartie un peu partout. Il faut donc que l'ordonnanceur arrive à organiser les calculs pour mettre les données accédées par un programme directement à côté des cœurs où les calculs se font (dans la mesure du possible). Et il faut réussir à faire ça assez vite pour que ça en vaille la peine. D'ailleurs, il parait que ce n'est pas un ordonnanceur qui vient du noyau vanilla mais une version spécifique aux constructeur de ces machines et optimisé pour.

      « Rappelez-vous toujours que si la Gestapo avait les moyens de vous faire parler, les politiciens ont, eux, les moyens de vous faire taire. » Coluche

      • [^] # Re: Pourquoi Linux est le plus adapté aux calculs ?

        Posté par (page perso) . Évalué à 6.

        Accessoirement, la performance de l'OS n'est qu'un des critères de choix. Pas mal d'autres critères entrent en compte : les petites habitudes des développeurs qui vont utiliser ces machines (s'ils sont tous linuxiens/unixiens, ils ne vont pas prendre du Windows), certaines possibilités de l'OS (je pense notamment à SSH, très utilisé dans ce monde-là et qui n'a pas de véritable équivalent sous Windows), un écosystème logiciel beaucoup plus développé que sous Windows (pour le HPC), …
        De plus, je pense que l'absence de ligne de commande correcte a fait très mal à Windows pour les clusters, PowerShell est arrivé assez récemment pour enrayer le phénomène.

    • [^] # Re: Pourquoi Linux est le plus adapté aux calculs ?

      Posté par (page perso) . Évalué à 10.

      Je pense qu'il y a un bon tas de raisons, entre autres: Il y a eu beaucoup d'efforts faits à l'intérieur de Linux pour qu'il passe bien à l'échelle sur de nombreux cœurs. C'est moins vrai de Windows, pour une raison assez simple: ce n'est pas facile d'y contribuer, alors que Linux oui :) Par ailleurs, les constructeurs apprécient de pouvoir bricoler Linux pour qu'il fonctionne encore mieux avec leur machine: fignoler la distribution des interruptions, régler des paramètres de gestion mémoire, virer des morceaux qui ne servent pas mais prennent du temps, etc. Bref, je pense que c'est surtout le fait qu'il soit libre qui fait que Linux marche bien pour le HPC :)

    • [^] # Re: Pourquoi Linux est le plus adapté aux calculs ?

      Posté par (page perso) . Évalué à 5.

      Tu peux poser la question du pourquoi, mais en fait j'ai l'impression que tu veux plutôt inférer que que si tu mets un Windows sur le calculateur, il sera aussi performant qu'un Linux. Définitivement non. Il y a plein de raisons. Moi je veux t'emmener sur un autre terrain : Demande-toi aussi pourquoi aucune bourse ne fonctionne avec un système Windows (dernière en date LSE )!
      En fait, dès que tu as besoin de tuner ton système finement, il n'y a pas de choix tu dois abandonner Windows. C'est ce qui est arrivé à tous les systèmes gérant des bourses et c'est ce qui est arrivé à tous les super-calculateurs.

      Le critère c'est : "Est-ce que je peux mettre les mains dans le cambouis?"
      Avec Windows la réponse est non et comme ce Windows est développé par des brêles moyens (pas trop quand même) pour des brêles totales (j'aime bien lancer des trolls velus le lundi aussi), ben …

      Tu peux pas adapter pour que cela tourne au poil.

      Voilà quoi!

      Allez A+
      Pat

  • # On peux utiliser le test Linpack sur un PC ?

    Posté par . Évalué à 2.

    Oui j'aimerais savoir combien de petaflops fait mon portable LDLC :-D

    Plus sérieusement j'aimerais pouvoir comparer les performances de plusieurs PC avec quelque chose d'un peu standardisé, alors pourquoi ne pas utiliser le même test que les supercalculateurs ?
    Quelqu'un l'a t'il déjà fait ?

    • [^] # Re: On peux utiliser le test Linpack sur un PC ?

      Posté par (page perso) . Évalué à -3. Dernière modification le 23/11/14 à 17:00.

      alors pourquoi ne pas utiliser le même test que les supercalculateurs ?

      Parce que l'objectif pour un supercalculateur n'est pas le même que pour un portable (par exemple, un supercalculateur se fout de l'autonomie en lecture de vidéo).
      C'est juste pour un cas particulier (de la perf brute sur un algo précis) dont les utilisateurs de portable se foutent un peu à part pour s'amuser (pas pour acheter)

      Quelqu'un l'a t'il déjà fait ?

      Cadeau par exemple, qui ressemble (reste à affiner avec le cadeau) :
      http://www.instructables.com/id/How-to-benchmark-an-intel-CPU/
      http://www.pugetsystems.com/blog/2014/08/29/Linpack-performance-Haswell-E-Core-i7-5960X-and-5930K-594/

      (j'étais curieux aussi, ça m'a pris 30 secondes, sans doute moins de temps que ce tu as mis pour écrire le commentaire,de même j'ai pasé plus de temps à te répondre qu'à trouver la réponse)

    • [^] # Re: On peux utiliser le test Linpack sur un PC ?

      Posté par . Évalué à 4.

      Un benchmark c'est compliqué à faire et ça dépend fortement des cas d'utilisation que tu souhaite tester. Sur une machine de bureau/portable, avec plusieurs programmes lancés en parallèle tu n'a pas les même besoins que sur une machine qui n'est là que pour lancer un calcul précis.

      Pour le premier par exemple outre la puissance brute (le nombre d'opération par seconde de la CPU), la latence de communication entre la CPU, la RAM et le disque sont pénalisants. Alors que le débit ne sera peut être pas aussi critique sur machine personnelle que sur supercalculateur.

      Tous les contenus que j'écris ici sont sous licence CC0 (j'abandonne autant que possible mes droits d'auteur sur mes écrits)

  • # Et les distrib' ?

    Posté par . Évalué à 7.

    Sur le desktop je comprends qu'on parle de linux vu son pourcentage mais sur clusters, j'aimerais avoir des chiffres plus précis au niveau des distributions utilisées.

    Il serait aussi intéressant de savoir si Linux domine autant sur les clusters moins puissants.

    • [^] # Re: Et les distrib' ?

      Posté par . Évalué à 9.

      La page http://www.top500.org/statistics/list/ donne quelques informations sur les distributions utilisées.

      En pratique, la distribution Linux a assez peu d'importance car, sur les gros clusters, peu de fonctionnalités sont effectivement fournies par la distribution:

      • Le kernel est optimisé et est recompilé spécifiquement en fonction de l'architecture des noeuds de calculs.

      • Les noeuds de calculs font tourner un kernel minimaliste et très peu de services: Par exemple, un demon slurm pour la gestion des resources et un autre pour gerer un "clustered file system". Il n'y a pas de desktop car tout se fait en ligne de commande, en général via ssh sur les noeuds de login.

      • Les outils de développement ainsi que la plupart des librairies ne sont pas gérés par le système de packages classique (deb, rpm, …). Il sont installés manuellement par les administrateurs systèmes (ou le vendeur du cluster) et sont gérés par un mécanisme tel que Modules ( http://modules.sourceforge.net/ ). L'intérêt de Modules est de pouvoir faire cohabiter plusieurs versions de chaque package ce qui est très pratique quand vous avez plusieurs centaines ou milliers d'utilisateurs avec des contraintes différentes.

      Concernant les petits clusters, ceux que j'ai vu fonctionner étaient quasiment tous sous Linux.
      C'est facile à installer, tout les outils nécessaires existent en Open-Source et il est possible de déployer des dizaines, centaines ou milliers de noeuds sans avoir à ce soucier des problèmes de licences.

    • [^] # Re: Et les distrib' ?

      Posté par (page perso) . Évalué à 3.

      Et surtout, combien de machines du top utilisent systemd?

      (Bon, j’imagine que c’est ~0, c’était surtout pour troller)

      • [^] # Re: Et les distrib' ?

        Posté par (page perso) . Évalué à 3.

        Et combien utilisent sysv init.

        « Rappelez-vous toujours que si la Gestapo avait les moyens de vous faire parler, les politiciens ont, eux, les moyens de vous faire taire. » Coluche

  • # Merci pour l'article, mais…

    Posté par (page perso) . Évalué à 1.

    Merci pour cette info qui conforte et nous rappelle que GNU/Linux domine dans ce domaine (note : pas seulement) ; merci aussi aux commentaires qui soumettent de bonnes questions… Les réponses sont tout aussi intéressantes.

    Pas besoin d'être un pro pour aider la communauté Débiane : utilisez simplement apt-p2p

  • # Rien de nouveau...

    Posté par (page perso) . Évalué à 8.

    C'est pas tout à fait vrai… A la place 27, il y a la nouvelle machine du CINES, Occigen, qui est une machine BULL à 50_000 coeurs. Elle est toujours derrière la machine de Total (pétrole) mais elle sera la seconde machine française et elle est principalement dédié à la recherche publique ! A noter qu'elle consomme 935 kW seulement pour un RMAX 1,628.8 TFLOP/s

    La machine Curie de l'IDRIS, de la génération précédente mais toujours une BULL, a 77_000 coeurs, consomme 2251 kW pour un RMAX de 1359 TFLOP/s.

    Pas la peine de de faire des gros calculs pour voir que la consommation par coeur est quasiment divisé par deux pour une puissance de calcul qui continue d'augmenté ! Je n'ai pas regardé globalement les autres chiffres mais le HPC green est vraiment un critère lors du choix d'une machine.

    • [^] # Re: Rien de nouveau...

      Posté par (page perso) . Évalué à 6.

      A noter qu'elle consomme 935 kW seulement pour un RMAX 1,628.8 TFLOP/s
      La machine Curie de l'IDRIS, de la génération précédente mais toujours une BULL, a 77_000 coeurs, consomme 2251 kW pour un RMAX de 1359 TFLOP/s.

      Sachant que chaque watt consommé pendant un an revient sensiblement à un euro, on peut en déduire que le coût de la consommation électrique de telles machines est de l'ordre du million d'euros chaque année.

      L'ENIAC ne consommait que 150 kW pour une puissance de calcul qui fait gentiment sourire aujourd'hui. En 60 ans, la consommation a été multipliée par 10 pour une puissance de calcul plusieurs millions de fois supérieure, peut-être même des milliards de fois, c'est difficile à dire tant les architectures ont évolué.

    • [^] # Re: Rien de nouveau...

      Posté par . Évalué à 3.

      J'aimerai savoir. Est-ce que cette consommation est celle de la machine pure ou est-ce la consommation de la machine et de tout ce qui est nécessaire pour la faire tourner correctement derrière ( refroidissement, onduleur, etc… ) ?

      • [^] # Re: Rien de nouveau...

        Posté par . Évalué à 2.

        Dans mes souvenirs, en moyenne trois cinquièmes de la consommation électrique est du fait du calculateur lui-même, et le reste concerne le système de refroidissement.

      • [^] # Re: Rien de nouveau...

        Posté par . Évalué à 1.

        Généralement la consommation électrique dans un data-center : 50% climatisation 50% Le reste, on dit qu'il faut 1W Pour refroidir 1W de machine.

        Au mieux avec les datacenter toute dernière génération on obtient du 25/75, mais vraiment dans le meilleur des mondes, ce qui arrive rarement, cf mon post plus bas.

  • # Sachant que dans un datacenter ...

    Posté par . Évalué à 1.

    La consommation électrique de la climatisation est au moins égale à la consommation des machines.

    Je vous laisse imaginer la consommation totale, deux fois au bas mot, sans compter la consommation en hydrocarbures des groupes électrogènes … ouch.

    Au mieux avec les nouvelles technos de free-cooling et l'agencement des data-center, le rapport descend à 1/3 dans le meilleur des cas et seulement dans des conditions optimales en dessous d'une certaine température seulement, au bon taux d'humidité et en fonction du niveau de pollution de l'air …

    • [^] # Re: Sachant que dans un datacenter ...

      Posté par (page perso) . Évalué à 3.

      Je ne suis pas fanatique de BULL mais ses dernières machines de calcul, refroidies à eau donc silencieuses, annoncent un PUE de 1.1 pour la partie calcul… Je pense que BULL ne prends pas des parts de marché sur le TOP500 sur du vent !

Suivre le flux des commentaires

Note : les commentaires appartiennent à ceux qui les ont postés. Nous n'en sommes pas responsables.