Developpez.com

Le Club des Développeurs et IT Pro

Des chercheurs dévoilent un processeur à 1000 coeurs

Intégrés dans une seule puce aux circuits configurables

Le 2011-01-03 17:30:45, par Idelways, Expert éminent sénior
Des chercheurs de l'Université de Glascow en Ecosse viennent de dévoiler une prouesse technologique. Alors que les constructeurs multiplient le nombre de coeurs dans leurs processeurs, participant à la démocratisation de la programmation parallèle, le Dr Wim Vanderbauwhede et son équipe, en collaboration avec l'Université du Massachusetts, ont tenté de pousser l'expérience encore plus loin en créant de multiples unités de calculs indépendantes au sein d'une même puce.

Pour y arriver, ils ont utilisé des puces de type Field Programmable Gate Array (FPGA). Les transistors de cette puce peuvent donc être réparties en plusieurs groupes pouvant effectuer des traitements différents et indépendants les uns des autres.

L'équipe du projet a ainsi réussi à créer 1000 mini-circuit, ce qui aurait permit d'atteindre des débit de traitement de 5Gbps avec l'algorithme de compression vidéo MPEG. Soit 20 fois plus rapide que la vitesse de compression atteinte par les PC actuels.

Cette puissance de calculs ne sont pas le seul atout des puces FPGA qui sont aussi économes et écologiques. Leur consommation en énergie est faible en raison de leur vitesse de traitement prodigieuse.

Le Dr Wim Vanderbauwhede rappelle néanmoins que ces puces ne sont pas utilisées dans les ordinateurs standards en raison de la difficulté de les programmer. Une difficulté que les développeurs ayant touché à l'embarqué, au langages de bas niveaux voire à la programmation parallèle connaissent bien.

D'autres détails sur cette prouesse seront révélés à l'occasion du Symposium International de l'Informatique Reconfigurable Appliquée, en mars prochain.

De quoi rendre jaloux Oracle et sa puce à 128 cœurs prévue pour 2015 ?

Source : Press Association

Et vous ?

Que pensez-vous de cette prouesse ?
Prometteuse ou encore très (trop) futuriste ?
Bon pour les PC, ou pour les serveurs (ou les deux) ?

En collaboration avec Gordon Fowler
  Discussion forum
18 commentaires
  • Elepole
    Membre éprouvé
    Envoyé par Idelways

    Que pensez-vous de cette prouesse ?
    J’applaudis.

    Envoyé par Idelways

    Prometteuse ou encore très (trop) futuriste ?
    Bon pour les PC, ou pour les serveurs (ou les deux) ?
    Quand on voit qu'on a toujours du mal a tirée partie du quad core pour le grand public.... Les labo et serveurs vont surement trouver l'utilité a se genre de puce, mais pour les PC pas avant ..... longtemps.
  • Barsy
    Expert confirmé
    Envoyé par vpourchet
    Boarf quelle utilite tu y trouverais ? Avoir 1000 coeurs te coutte un bras, et l'autre bras tu le depense en ram (2 To de ram pour le bouzin me semble suffisants mais ca ne tiendrais pas dans une CM standard).

    Par contre effectivement pour faire des labs et des machines virtuelles..... miam miam Le nombre de serveurs virtuels ou de Desktops qu'on pourrait faire tourner sur un seul serveur ....
    Dans quelques années, avoir 1000 cœurs et 2To de RAM sera la norme et les bécanes avec des quad core seront reléguées au rang de bouses.

    S'il est très complexe de développer des applications pour plusieurs cœurs de processeur, je suppose que pour ce qui est du multimédia, c'est très intéressant. Par exemple, dans le cas d'encodage ou de décodage de vidéo/image/son, chaque cœur peut s'occuper d'une partie du contenu afin de diminuer encore davantage la taille d'un fichier grâce à des algorithme de compression plus performants.
  • Firwen
    Membre expérimenté
    Le Dr Wim Vanderbauwhede rappelle néanmoins que ces puces ne sont pas utilisées dans les ordinateurs standards en raison de la difficulté de les programmer. Une difficulté que les développeurs ayant touché à l'embarqué, au langages de bas niveaux voire à la programmation parallèle connaissent bien.
    soucis en grande partie reglés par les progrés récents sur les compilateurs vers FPGA.

    Je me suis toujours demander si ces petits bijoux ne feraient pas des bons compléments aux x86 pour les traitements lourds dans nos vieilles becannes.
  • gorgonite
    Rédacteur/Modérateur
    Envoyé par Idelways 
    Pour y arriver, ils ont utilisé des puces de type Field Programmable Gate Array (FPGA)[...] L'équipe du projet a ainsi réussi à créer 1000 mini-circuit, ce qui aurait permit d'atteindre des débit de traitement de 5Gbps avec l'algorithme de compression vidéo MPEG. Soit 20 fois plus rapide que la vitesse de compression atteinte par les PC actuels.

    dans mon labo, une équipe a fait 1024 coeurs sur une puce il y a déjà quelques temps... donc rien d'exceptionnel en soi

    Envoyé par Idelways 
    De quoi rendre jaloux Oracle et sa puce à 128 cœurs prévue pour 2015 ?[/URL]


    128 threads répartis sur 16 coeurs... ça n'a rien à avoir

    Envoyé par Firwen
    soucis en grande partie reglés par les progrés récents sur les compilateurs vers FPGA.

    euh... il y a eu une belle montée en abstraction de HDL, mais cela conduit souvent à des designs simulables mais non synthétisables.
    as-tu des références sur ces "énormes" progrès ?
  • kaymak
    Membre émérite
    Hello,

    Elles fonctionnent comment les puces FGPA pour être si différentes et si compliquées à programmer ?

    Ce n'est pas un système de registres avec des jumps et tout ces copains ?
    (je dis peut être une grosse bêtise..... ne m'en veuillez pas svp)

    Je me suis toujours demander si ces petits bijoux ne feraient pas des bons compléments aux x86 pour les traitements lourds dans nos vieilles becannes.
    Il me semble que sur les cartes graphiques les puces sont spécifiques, tant dans leur programmation, que dans leur fonctionnement, je pense notamment aux dernière de chez nvidia basé sur le fermi, si je ne me trompes pas.
    Et c'est ce qui les rend si performantes, non ?

    Partant de cet exemple, il est semble évident qu'utiliser des composants spécialiser, avec les développements logiciels qui vont bien, améliorerait les performances de certains scénarios d'utilisation.

    Après de là à le généraliser.... Encore faudrait il y trouver un réel intérêt.
    Les cartes graphiques en ont, avec tous le fric qu'il y à derrière et l'industrie du jeux vidéo qui pousse.

    Pour les autres scénarios envisageable par contre ... je ne sais pas : /

    A plus

    edit

    D'après ce que j'ai pu lire, d'une manière pratique ces chercheurs auraient spécifiquement programmés 1000 coeurs fpga, pour optimiser l’exécution du codec avec un langage style http://fr.wikipedia.org/wiki/VHDL-AMS ?
    C'est effectivement très compliqué.

    Mais alors le processeurs d'oracle sparc t4 est il basé sur ce même système ?
    Peut être avec un processeur central, et des unités dédiés aux calculs de base de données ?
    J'y ai bien vu la notion d'optimisation des opérations de cryptage, est aussi le cas pour les requêtes que l'on exécute sur la base de données ?
    Ne peut on pas imaginer connecter plusieurs de ces 128 unités avec des connexions adéquat pour imiter ces 1024 coeurs ?
    Peut on imaginer que les performances soient meilleures ? Ou peut être pas ?

    plein de question en fait...
  • Klaim
    Membre expert
  • TNT89
    Membre confirmé
    Je ne comprends pas pourquoi c'est si exceptionnel... Un GPU NVidia, le GTX 580, a 512 cœurs CUDA, donc en SLI deux cartes en ont déjà 1024 avec des possibilités bien sympathiques...

    bref, je dois rater quelque chose, non?
  • gorgonite
    Rédacteur/Modérateur
    Envoyé par TNT89
    Je ne comprends pas pourquoi c'est si exceptionnel... Un GPU NVidia, le GTX 580, a 512 cœurs CUDA, donc en SLI deux cartes en ont déjà 1024 avec des possibilités bien sympathiques...

    bref, je dois rater quelque chose, non?

    ben GPU != FPGA... tout simplement

    que ce soit en terme de consommation énergétique, d'architecture, etc.

    regardes la différence entre Cuda et VHDL/Verilog/SystemC
  • ArKam
    Membre éclairé
    Actuellement chez nous (dans ma boite) ils sont en train de travailler sur une autre approche, c'est comparable au multi-coeur mais c'est aussi comparable au DSP, bref, actuellement on peux dire que c'est du Dynamic DSP Multi Core.

    Au vue des derniers slides et design ça à l'air plutot sympa

    Maintenant comme dit plus haut, la puissance c'est bien mais encore faut il pouvoir s'en servir facilement et lui trouver une utilité pour les masses sans quoi c'est vouer à mourir à plus ou moins long termes.
  • ratomms
    Membre actif
    Envoyé par Idelways

    Le Dr Wim Vanderbauwhede rappelle néanmoins que ces puces ne sont pas utilisées dans les ordinateurs standards
    C'est vraiment dommage.