Supercalculateurs : scalaires ou vectoriels ?

Posté par  . Modéré par Nÿco.
Étiquettes : aucune
0
26
fév.
2003
Technologie
Vu dans Le Monde aujourd'hui, un article sur le présent et le futur des supercalculateurs.

Cray annonce son objectif d'atteindre le petaflop (un million de miliard d'opérations à virgule flottante par seconde) d'ici 2010, et propose des configurations à 52,4 teraflops, développées avec le concours de la NSA (National Security Agency, les gentils monsieurs qui traquent les terroristes dans nos communications). Leurs concurrents :
- NEC au Japon avec le projet Earth Simulator (40 teraflops) qui simule notre planète aux niveaux météorologiques et tectoniques ;
- IBM aux Etats-Unis avec Blue Gene/L (367 teraflops) en commande pour le département américain de l'énergie. Une différence fondamentale entre Cray et NEC d'un côté et IBM de l'autre : l'architecture, vectorielle pour les premiers, scalaire pour IBM.
L'intérêt des architectures scalaires (en clusters) est leur moindre coût de développement puisqu'ils utilisent du matériel produit en plus grands quantitées ; en plus le tout tourne sous Linux : "Blue Gene/L will have a theoretical peak performance of up to 367 teraflops with 130,000 processors running Linux".
Leur défaut est d'avoir des performances limitées par les communications entre les composants du cluster.

Aller plus loin

  • # Re: Supercalculateurs : scalaires ou vectoriels ?

    Posté par  . Évalué à 4.

    presque ttes les applications mentionnées sont soit militaire, soit décryptage. c'est un poil révoltant !
    • [^] # Re: Supercalculateurs : scalaires ou vectoriels ?

      Posté par  . Évalué à 10.

      il ne faut pas oublier la meteorologie qui doit etre le domaine qui a le plus consommé de supercalculateurs...
      qqn aurait une info sur la repartition des supercalculateurs par domaine ?
      • [^] # Re: Supercalculateurs : scalaires ou vectoriels ?

        Posté par  . Évalué à 4.

        Deux grands domaines sont ouverts à de telles machines : les sciences de la vie et la climatologie. Dans le premier, il s'agit, par exemple, de comprendre comment une cellule fonctionne.

        D'aussi loin que je connaisse le domaine, la puissance de calcule dédiée à la biologie est tres faible, et hormis les privés comme Celera Genomics ou les centres majeurs comme le NCBI ou l'EBI, et dans une moindre mesure le SIB, c'est le désert...
        • [^] # Re: Supercalculateurs : scalaires ou vectoriels ?

          Posté par  . Évalué à 7.

          Je crois qu'a Singapour ils sont en train de construire appele biopolis. Un centre nerveux ou les entreprises se lancant dans la biotechnogie pourront s'installer et en plus beneficier d'un acces a un cluster de calcul commun pour leurs travaux.
        • [^] # Re: Supercalculateurs : scalaires ou vectoriels ?

          Posté par  . Évalué à 10.

          Il y a un domaine peut-être moins connu qui utilise du calcul massivement parallèle : les simulateurs de crash : voir le logiciel de Mecalog sur http://www.radioss.com/(...) qui est porté sur des architectures NEC, IBM, et sans doute Cray maintenant qu'ils reprennent du poil de la bête.
      • [^] # Re: Supercalculateurs : scalaires ou vectoriels ?

        Posté par  . Évalué à 8.

        Une bonne URL : top500.org
        j'en profite pour ajouter que la distinction entre ordinateur purement vectoriel et ordinateur purement scalaire n'a plus autant de signification qu'il y a encore quelques années, dans la mesure où la plupart de processeur x86 actuels peuvent effectuer plusieurs opérations en un même cycle. C'est ce qui explique en partie la résistance de cette architecture aujourd'hui. Sauf erreur de ma part.
      • [^] # Re: Supercalculateurs : scalaires ou vectoriels ?

        Posté par  (site web personnel) . Évalué à 10.

        En effet, chez météofrance, il en ont un relativement costaud (de supercalculateur).

        Mais le principal désavantage de ces monstres de calcul, c'est qu'ils sont très chers.
        ex : Je crois également qu'au CERN (Centre Européen de Recherches Nucléaire), ils parlaient de s'en installer un pour le projet LHC (Large Hadron Collider, le nouvel accélérateur de particule), mais ils ont opté pour mettre un très grand nombre de "petites" bécanes en parallèle, le coup était moins monstrueux (et c'est plus facilement upgradrable).

        C'est qu'il en faut de la puissance, y a 8 Go (!) d'informations à la seconde qui vont sortir de cette machine, après traitement il n'y en aura que (que !) 100 Mo/s qui vont devoir être traités, je vous laisse imaginer...
        • [^] # Re: Supercalculateurs : scalaires ou vectoriels ?

          Posté par  . Évalué à 4.

          C'est qu'il en faut de la puissance, y a 8 Go (!) d'informations à la seconde qui vont sortir de cette machine, après traitement il n'y en aura que (que !) 100 Mo/s qui vont devoir être traités, je vous laisse imaginer...

          Une collision durant un temps infime, ce flux de données énorme ne dure pas longtemps, non ? Ce n'est pas 100 Mo/s pendant des minutes quand même ?
          • [^] # Re: Supercalculateurs : scalaires ou vectoriels ?

            Posté par  (site web personnel) . Évalué à 8.

            Au risque de te donner des infos erronées, j'ai fait une petite recherche sur http://public.web.cern.ch/public/about/future/future_f.html(...)

            Cinq expériences , utilisant des détecteurs gigantesques, étudieront ce qui se passent lorsque les faisceaux du LHC entrent en collision. Elles auront à gérer autant d'informations que l'ensemble du réseau européen de télécommunications aujourd'hui!
            Non seulement le LHC sera l'accélérateur avec la plus haute énergie au monde, mais il aura aussi les faisceaux les plus intenses. Les collisions se produiront si fréquemment (800 millions de fois par seconde) que les particules d'une collision n'auront pas encore quitté le détecteur lorsque la collision suivante se produira. Comprendre ce qui se passe dans ces collisions est la clé du succès du LHC


            En fait, les 8 Go/s c'est ce qu'il sort de manière brute, et les 100 Mo/s, c'est la quintessence de ces 8 Go/s (après divers traitements).
            Tu vois un peu le genre de défi technologique de dingue que c'est ?
        • [^] # Re: Supercalculateurs : scalaires ou vectoriels ?

          Posté par  . Évalué à 3.

          le coup était moins monstrueux (et c'est plus facilement upgradrable).

          Je suis loin d'être un spécialiste du domaine mais les scientifiques que je connais qui utilisent des clusters ne les upgradent pas, mais changent tout le cluster régulièrement. Ils vont quand même jusqu'à une économie de 80 % par rapport à un supercalculateur.
    • [^] # Re: Supercalculateurs : scalaires ou vectoriels ?

      Posté par  . Évalué à 10.

      Et surtout n'oublions pas que les blue gene/X ne sont que des prémisses au blue gene "petaflop" qui permettra de determiner la structure tertiaire des proteines (l'arrangement de leurs acides aminés dans l'espace) à partir de leur structure primaire (soit la sequence des acides aminés la composant).
      • [^] # Re: Supercalculateurs : scalaires ou vectoriels ?

        Posté par  . Évalué à 5.

        c'est le graal pour bcp de chercheur sur la structure des protéines. Il ne faut pas oublier que bcp de facteurs autres que la séquence interviennent dans la formation spatiale de la proteine, par ex. d'autres protéines :)
        La plupart des grosses ressources de calcul dédié aux science de la vie servent à analyser les 'séquences', qu'elles soient génomique (assemblage de génome, recherche de gène) ou protéiques (relation structure/activité, modélisation par homologie, modélisation ab initio).
        Toute la partie protéique releve autant de la chimie et de la physique que de la biologie d'ailleurs :).
    • [^] # Re: Supercalculateurs : scalaires ou vectoriels ?

      Posté par  . Évalué à 4.

      il me semble que pour les simulations biologiques justifiant de tels investissements (par exemple la transcription d'ARN en proteines, incluant la conformation spatiale des proteines) on manque encore de puissance de calcul (facteur 10 a 100)

      (cynique) en fait quand on atteindra le petaflop, les militaires financeront des recherches sur des "armes proteiques"... (/cynique)
    • [^] # Re: Supercalculateurs : scalaires ou vectoriels ?

      Posté par  . Évalué à 7.

      presque ttes les applications mentionnées sont soit militaire, soit décryptage. c'est un poil révoltant !

      Je ne vois pas pourquoi. On n'est pas dans un monde de gentils... Et le vieux diction latin est toujours d'actualité : "si vis pacem, para bellum" (si tu veux la paix, prépare la guerre". En 1940, les anglais étaient bien contents de savoir déchiffrer les messages allemands codés avec Enigma.

      Mis à part mon avis personnel, qu'on le veuille ou non le militaire est à l'origine de beaucoup de progrès techniques, ne serait-ce qu'à cause des budgets disponibles.
  • # CEA en France

    Posté par  (site web personnel) . Évalué à 9.

    A noter que pour notre beau pays, le premier calculateur se classe 7ème au TOP 500.

    Il appartient évidemment au CEA pour faire des simulations nucléaires de type militaire (ça évite que Chirac refasse pêter des bombes en Polynésie comme en 1996).
    • [^] # Re: CEA en France

      Posté par  . Évalué à 9.

      juste pour info
      - aucun rapport avec l'info
      - peut-etre du delire complet mais sait-on jamais ?

      http://www.jp-petit.com/nouv_f/Demande_aide.htm#essais_clandestins(...)
      • [^] # Re: CEA en France

        Posté par  . Évalué à 3.

        Oui la France continue de proceder a des recherches en matiere d'explosion nucleaires, mais elle effectue ses tests dans l'espace et nous sommes tous expose a leur rayonnement en permanence.
        C'est d'ailleur une des raisons de la creation d'EADS dont l'action en bourse chute en ce moment.
        La France dispose actuellement de satellites de mesures dans l'espace, et ces recherches sont partagees avec les americains, notamment a l'aide de supercalculateur emprunte a la meteorologie Nationnale tres interressee elle aussi.

        Pour info les films des explosions ne sont meme pas cachee:
        http://sohowww.nascom.nasa.gov/data/realtime/mpg/(...)
      • [^] # Re: CEA en France

        Posté par  . Évalué à 2.

        oui c'est du délire complet je vais essayer de retrouver un article du même jean pierre petit
        genre les américains préparent la super mega bombe qui va detruire l'asteroide menacant la terre
        l'info sur cette menace ayant été bien sur donné par le petit extra-terrestre qui c'est craché a roswell
      • [^] # Re: CEA en France

        Posté par  (site web personnel) . Évalué à 3.

        Le site de JP Petit trouble tous les gens qui y passent,
        au debut on le prend pour un fantaisiste, puis si on lit tout
        de sa (auto)bio à des trucs mathematique et physique tres pointu qu'on comprend pas, on sait plus....
        il semble que ca soit un sientifique 'marginal'
        il crois aux ovnis, a la conspiration....
        enfin il a quand meme fait beaucoup de publications, de livres
        on parle pas mal de lui aussi
        http://www.google.fr/search?q=Jean+Pierre+Petit&ie=UTF-8&oe(...)
    • [^] # Re: CEA en France

      Posté par  . Évalué à 6.

      ptain le mec est renseigné , mais est ce qu'il sert que a cela ?
      le CEA bosse sur :
      les nouvelles centrales ( aka centrale + acelerateur de particules pour casser le particules les plus dangereuse )
      pile a combustible ( 50% du budget)
      centrale nucléaire produisant de l'hydrogène (pour les piles bien sur )
      • [^] # Re: CEA en France

        Posté par  . Évalué à 2.

        > centrale nucléaire produisant de l'hydrogène
        hein ?
        ce ne serait pas plutot "uilisant " ?
        • [^] # Re: CEA en France

          Posté par  (site web personnel) . Évalué à 5.

          Non. Il faut *beaucoup* d'énergie pour extraire de l'hydrogène (de l'eau par exemple).
          C'est pour ça que la pile à combustible, d'un point de vue bilan énergétique, n'est pas si intéressante que ça.

          Si on veut utiliser la pile à combustile dans l'automobile, le seul avantage qu'il y aura c'est qu'au lieu d'avoir d'innonbrables sources polluantes (les voitures actuelles) on n'en aura qu'un nombre limité (les centrales nucléaires ou thermiques chargées de la production de l'hydrogène).

          Pensez à l'environnement avant d'imprimer ce commentaire - Please consider the environment before printing this comment

  • # Re: Supercalculateurs : pour qui ? quel usage ?

    Posté par  . Évalué à 6.

    Au dela des simulations nucleaires, de la meteo et du defi technologique ? Quel est le marche reel des supercalculateurs.

    On parle toujours de mega/giga/petaflops, c'est peut etre pratique pour comparer d'avoir une echelle monodimensionnel, mais c'est souvent qu'une puissance crete / theorique. Pourtant ce qui est important c'est l'exploitation (et la facilite d'exploitation) de cette puissance dans les programmes et les algorithmes.

    En image, j'ai un peu l'impression que les calculateurs sont des dragsters, comment en faire des voitures ? Le marche des voitures est beaucoup plus important que celui des dragsters.
    • [^] # Re: Supercalculateurs : pour qui ? quel usage ?

      Posté par  . Évalué à 7.

      Pr ce qui est de la recherche en bio, les labos préfèrent en général des solutions à base de cluster sous linux. C'est bcp moins cher qu'une seule grosse machine, et tout aussi efficace puisque les algorithmes utilisés couremment sont presque tous parallélisable facilement presque sans overhead du à la communication entre noeuds..
      • [^] # Re: Supercalculateurs : pour qui ? quel usage ?

        Posté par  . Évalué à 4.

        Je pense aussi que les clusters ont beaucoup plus d'avenir que les supercalculateurs. Si en bio ce sont des applis qui se parallelisent bien (ie. taches presque independantes), c'est en plus parfaitement adapte. On peut quand meme se demander si il est possible de paralleliser efficacement des applis plus complexes (au sens de la parallelisation) avec des clusters, sans avoir necessairement recours a des technos et du matos dedies au niveau du reseau.
        • [^] # Re: Supercalculateurs : pour qui ? quel usage ?

          Posté par  . Évalué à 5.

          C'est clair que le réseau est déterminant ds le cluster: par ex. un soft de modélisation moléculaire bien connu, CHARMM, est super efficace sur des machines multiprocesseurs, les perfs augmentent quasi linéairement jusqu'a 64CPU. Par contre, un copain l'a testé sur une ferme de quadriprocesseur alpha, et dès qu'il tournait sur plus d'un noeud, les perfs s'effondrait d'autant plus que le nombre de noeuds impliqué étaient important.
          Il est depuis retourné a ses dual athlons, qui ne sont meme pas 2 fois plus long qu'un quadriproc alpha pr ce genre de choses :)
    • [^] # Re: Supercalculateurs : pour qui ? quel usage ?

      Posté par  (site web personnel) . Évalué à 5.

      Il y a 2 choses qui freinent les supercalculateurs, le prix (et 10% de perf réel pour 1/100 du prix reste toujours plus interrescant même si c'est moins efficace) et la nature de certain problème.

      Je crois que la classe de problèmes qui a besoin de finir un calcul complet avant de passer à l'étape suivante (un truc itératif donc), n'est pas efficacement parrallélisable si le nombre de pas est très important sur le temps passé dans chaque pas (qui lui est distribué).

      Cela inclue les simulations météo (maillage de l'atmosphère et itération dans le temps), les simulations de phénomènes physique type méca flux, simulation élèctriques,... En général le boulot pour un pas de calcul est faible mais si il en faut des centaines de millions...

      En gros, une fois le calcul fini il faut distribuer les calculs entre noeuds avant de pouvoir itérer. Et le temps de communication devient le véritable goulet d'étranglement.

      "La première sécurité est la liberté"

      • [^] # Re: Supercalculateurs : pour qui ? quel usage ?

        Posté par  . Évalué à 5.

        Je pense aussi que les algos iteratifs sont inapates pour etre bien parallelise, mais je pense que le probleme vient plus de l'algo en lui meme que du probleme a resoudre. Je m'explique :

        Tu veux calculer a(i,j) et pour calculer a(i,j) il faut avoir deja calcule a(i-1, j) et a(i, j-1). C'est valable aussi pour des differences finis and co.

        On peut faire un algo iteratif:
        pour i de 1 a n
        pour j de 1 a n
        calculer a(i,j)

        Il sera pas bien parallelisable (remarquons aussi qu'il ne sera pas bien efficace car limite par la bande passante memoire si n est plus grand que le cache !).

        On peut faire des blocs pour acceler tous ca, ou mieux faire des blocs recursifs. On obtient alors des algorithmes cache-oblivious (cf google) qui sont efficaces (quel que soit la hierarchie memoire) et efficacement parallelisable (meme sur des clusters avec des reseaux ordinaires). Bref, je pense qu'il y a pas mal de boulot a faire du cote des algos, et brulons les algos iteratifs.
        • [^] # Re: Supercalculateurs : pour qui ? quel usage ?

          Posté par  (site web personnel) . Évalué à 3.

          C'est pas ça le problème.

          C'est plutôt calculer a(i,j,t)

          pour t de 1 a T
          pour i de 1 a n
          pour j de 1 a n
          a(i,j,t)=calculer(a(i,j,t-1), a(i-1,j-1,t-1), a(i-1,j,t-1),... )

          Sachant que n est "petit" et T "immense".

          Tla difficulté est dans l'interdépendace sur a(i-1,j-1)

          "La première sécurité est la liberté"

          • [^] # Re: Supercalculateurs : pour qui ? quel usage ?

            Posté par  (site web personnel) . Évalué à 2.

            > Sachant que n est "petit" et T "immense"
            ce genre d'optimisation reste tout aussi interessante quand n est "grand" et T "petit" !
          • [^] # Re: Supercalculateurs : pour qui ? quel usage ?

            Posté par  . Évalué à 2.

            Si ce que j'explique peut s'adapter a ton probleme meme si ce n'est pas immediat (mon probleme etait en dimension 1). On peut supposer que t est un temps et (i,j) une repartition spatiale.

            L'idee repose sur le fait que si l'on connaissait a(i,j,t) pour i dans [i1, i2], et j dans [j1, j2], alors on pourrait calculer une petit pyramide. (dessine le graphe de precedence pour t'en convaincre). Imagine maintenant le tout en recursif (des pyramides dans des pyramides) et tu obtiens un truc qui marche et qui n'est pas limite par la bande passante de la memoire qui peut contenir n^2 elements (et si n n'est pas si petit, cela peut etre le disque). En fait, je pense qu'on peut se ramener au cas des cubes en faisant un changement de variable judicieux.

            Remarque aussi que si n est trop petit, on ne pourra pas paralleliser efficacement (on obtient une chaine de dependance si n = 1 !).
            • [^] # Re: Supercalculateurs : pour qui ? quel usage ?

              Posté par  (site web personnel) . Évalué à 2.

              C'est pour ça que je précise bien n petits.

              Je fais de la simulation CAO de vhdl. Il doit y avoir 1000 delta cycle par seconde en gros sur des benchs de ~30 Mo de RAM. Un delta cycle correspond au calcul de l'état du système sachant qu'il s'agit d'un graph complexe.

              Ce genre de simulation peut durer 2 heures. Si on utilise en cluster, je pense que l'on passerait son temps à distribuer son bout de delta cycle calculé.

              Il faudrait partionner le graph, dupliquer certaines parties, tenter une anticipation de valeur des arcs d'entrèe/sortie, et synchroniser le tout périodiquement... un beau bordel à coder...

              "La première sécurité est la liberté"

              • [^] # Re: Supercalculateurs : pour qui ? quel usage ?

                Posté par  . Évalué à 1.

                Oui et non. Le bout de delta calcule doit absolument servir a faire d'autres calculs localement. Quand tu dis 30mo ca veut dire que n vaut combien et que t vaut combien ?

                Enfin de toute facon, je pense qu'il manque des outils pour paralleliser efficacement ce genre de code ultra frequent f(t+1) = f(t). Mais je pense qu'il n'est pas necessaire d'investir dans un super calculateur ou un reseau du feu de dieux pour faire ces calculs efficacement sur un cluster ordinaire ; il faut juste developper les bons outils et les bons algorithmes.
                • [^] # Re: Supercalculateurs : pour qui ? quel usage ?

                  Posté par  (site web personnel) . Évalué à 1.

                  Le bout de delta calcule doit absolument servir a faire d'autres calculs localement.

                  En fait, un état qui change peut se propager dans tout le graph mais tu n'en sait rien à l'avance.

                  30 Mo c'est l'empreinte mémoire du programme. C'est faible mais tout peut être utiliser à chaque delta cycle.

                  Comment qualifier n... je sais pas trop. Cela représente qq 10 de milliers de ligne de code. 1000 delta cycle/s pendant 2 heures -> ~7200000. Mais le plus important est qu'il y a donc 1000 synchro/s à faire avant de commencer à gagner la moindre seconde sur les temps de cacluls. Or des réseaux IP à latence ~1ms... (enfin si <0.2 ms sur un linux sur le même switch en 100 mbits).

                  Il y a peu de donné par paquets mais >10 000 paquets par secondes sur 10 noeuds et par noeuds (il faut un hub et des carte réseau en promiscous pour faire un super broadcast).

                  "La première sécurité est la liberté"

  • # Re: Supercalculateurs : scalaires ou vectoriels ?

    Posté par  . Évalué à 0.

    Scalaire, bien sur!

Suivre le flux des commentaires

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