Les derniers contenus liés au tag GPGPU

Afficher sous forme de : Titre | Flux Filtrer avec un second tag : AMD; CUDA; Fermi; GK110; GTC; HSA; Kepler; Nvidia; OpenCL; Tesla;

Nvidia lance les Quadro Pascal dont une GP100

Publié le 09/02/2017 à 10:57 par Damien Triolet

Après deux premiers modèles lancés cet été, Nvidia vient de dévoiler toute une famille de Quadro de génération Pascal qui vont pousser vers le haut puissance de calcul et efficacité énergétique. Un lancement qui permet par ailleurs à Nvidia d'introduire le GPU GP100 et sa mémoire HBM2 sur une carte graphique.

Cet été, Nvidia avait débuté le renouvellement de sa gamme de cartes graphiques professionnelles avec l'introduction de deux nouvelles Quadro, les P6000 et P5000 respectivement basées sur les GPU Pascal GP102 (Titan X) et GP104 (GTX 1080). D'autres modèles étaient bien entendu au programme et viennent d'être dévoilés : les Quadro GP100, P4000, P2000, P1000, P600 et P400. En voici les spécifications :

La Quadro GP100 est bien entendu la nouvelle venue la plus intéressante, mais avant d'en parler en plus de détails, intéressons-nous aux autres modèles de la famille que Nvidia positionne de la sorte :

 
 

La Quadro P6000, dont nous avions omis de parler à sa sortie, est basée sur un GPU GP102 complet et équipée de 24 Go de GDDR5X, contrairement à la Titan X qui embarquait le même GPU mais castré et avec "seulement" 12 Go de mémoire. La Quadro P6000 représente l'offre de Nvidia la plus élevée en terme de puissance de calcul en simple précision et de quantité de mémoire embarquée. Elle affiche une puissance brute 70% plus élevée que celle de la M6000 24 Go qu'elle remplace. Elle vise donc les applications de rendu les plus lourdes ou encore le GPGPU.

En-dessous, la Quadro P5000 vise des applications similaires mais est un peu moins véloce. Il s'agit d'une version professionnelle de la GeForce GTX 1080 mais équipée de 16 Go de mémoire GDDR5X. La puissance brute a cette fois été doublée par rapport à la M5000.

Les nouvelles Quadro P4000, P2000, P1000, P600 et P400 remplacent les M4000, M2000, K1200, K620 et K420, ces dernières n'ayant pas profité du passage à l'architecture Maxwell. Excepté pour la P2000 qui passe à 5 Go au lieu de 4 Go, la quantité de mémoire n'évolue pas, Nvidia faisant en sorte de forcer une forte segmentation sur ce point.

La P4000 repose sur un GPU GP104 fortement castré qui permet à Nvidia de limiter sa consommation à 105W et de proposer un format simple slot. Sa puissance de calcul est doublée par rapport la M4000.

La P2000 embarque de son côté un GPU GP106, comme sur la GeForce GTX 1060, mais castré tant au niveau des unités actives que du bus mémoire, raison pour laquelle elle embarque un ensemble inhabituel de 5 Go de mémoire. Sa puissance de calcul profite d'un boost de 65% par rapport à la M2000.

Dans l'entrée de gamme, les P1000, P600 et P400 sont toutes trois basées sur le GPU GP107 (GTX 1050) plus ou moins castré. Leur puissance de calcul est donc plutôt limitée même si elle est doublée par rapport à la génération précédente. Ce type de Quadro est plutôt utile pour profiter des pilotes professionnels dans certaines applications que pour leur puissance de calcul.

De quoi en arriver à la Quadro GP100 qui nous intéresse particulièrement. Sa nomenclature l'indique sans ambiguïté, il s'agit d'une carte à part, qui vise autant les applications traditionnelles des Quadro et que le GPU Computing qui a besoin de plus que la simple précision. Pour rappel, le GPU GP100 qui lui donne son nom est le premier à embarquer la mémoire HBM2, pour une bande passante plus élevée, ainsi qu'une interconnexion de nouvelle génération : NVLink.

Jusqu'ici, le GP100 n'était exploité qu'en format serveur, soit de type PCI Express passif, soit de type module mezzanine. Nous pouvions donc nous demander si Nvidia avait réellement équipé ce GPU de tout l'attirail nécessaire pour en faire une carte graphique, notamment le moteur d'affichage et les sorties vidéo, puisqu'il est avant tout destiné au calcul massivement parallèle. Une interrogation qui trouve donc une réponse avec son arrivée dans une Quadro au format carte graphique classique.

Au niveau de la puissance brute en simple précision (FP32), cette Quadro GP100 n'est pas impressionnante. Sur ce point, le GP100 n'est pas mieux armé que le GP102 et Nvidia a décidé de castrer le GP100 de la Quadro GP100 alors que le GP102 de la Quadro P6000 est complet. Cette dernière est ainsi 15% plus véloce à peu près à tous les niveaux liés au rendu 3D. Le GP100 est probablement équipé de 128 ROP contre 96 pour le GP102, mais ses 6 moteurs de rastérisation ne peuvent en débiter plus de 96. Par ailleurs, il faut se contenter de seulement 16 Go de mémoire contre 24 Go pour la P6000.

Pour de nombreuses applications le choix entre ces deux Quadro sera pour le moins délicat. Là où le GP100 se démarque c'est avec un support très performant de la double précision (FP64) et de la demi-précision (FP16), et bien entendu au niveau de la bande passante mémoire largement supérieure avec 717 Go/s. Autre avantage, mais dont il est difficile d'estimer l'intérêt en pratique, la Quadro GP100 voit ses connecteurs SLI remplacés par 2 liens NVLink. Ceux-ci vont permettre de coupler 2 Quadro GP100 en donnant à chaque GPU un accès plus performant à la mémoire de l'autre.

En équipant sa nouvelle Quadro de cette connectique, Nvidia en fait notamment une solution de développement très utile pour la plateforme Tesla puisqu'il est possible de l'utiliser pour faire du développement sur station de travail en vue d'en déploiement sur serveur par la suite.

La Quadro GP100 se retrouvera dans quelques mois en face de la Radeon Instinct MI25 qui devrait profiter d'une puissance de calcul légèrement supérieure mais d'une bande passante inférieure. Comme pour le reste des nouvelles Quadro, la disponibilité de la Quadro GP100 est prévue pour mars, à un tarif qui n'a pas encore été communiqué.

Terminons par un petit mot sur ce que cela implique du côté des cartes graphiques destinées au moins en partie aux joueurs. La Quadro GP100 laisse penser que le GP100 pourrait également se retrouver dans une nouvelle Titan. De quoi pouvoir envisager le remplacement de la Titan X 12 Go actuelle par une version GP100 16 Go en même temps que le lancement d'une éventuelle GeForce GTX 1080 Ti en GP102 ?

GTC: Nvidia Tesla P100: 10 Tflops, HBM2...

Publié le 05/04/2016 à 20:34 par Damien Triolet

Comme prévu, Jen-Hsun Huang, le CEO de Nvidia, a levé un coin du voile concernant le premier produit Pascal, l'accélérateur Tesla P100. Au menu : 15 milliards de transistors, 10 Tflops, HBM2, 4 Mo de L2…

Le Tesla P100 est un nouvel accélérateur dédié au calcul massivement parallèle qui embarque un GPU GP100, auquel nous faisions référence précédemment en tant que Pascal, nom de code de son architecture. Il s'agit bel et bien d'un nouveau monstre de puissance. Pour cette première utilisation de procédé de fabrication 16nm FinFET Plus, Nvidia n'a pas eu peur de concevoir un énorme GPU et le GP100 intègre pas moins de 15.3 milliards de transistors répartis sur 610 mm². A comparer aux 8 milliards de transistors de l'actuel GM200 qui mesure également 600 mm².

De quoi pouvoir pousser la puissance de calcul vers le haut mais surtout intégrer de nouvelles fonctionnalités avant tout dédiées au monde du HPC telles que la connectique NVLink qui offre une bande passante combinée de 160 Go/s.

 
 

Le Tesla P100 se présente sous la forme d'un module au format mezzanine qui revient à superposer 2 PCB, avec un ou plusieurs connecteurs entre ceux-ci. Sur le Tesla P100 il s'agit de 2 connecteurs de 400 broches qui vont permettre de proposer la connectique NVLink. Ce format facilite également l'intégration dans les serveurs et la mise en place d'un refroidissement performant ce qui permet à Nvidia de pousser le TDP à 300W.

Concernant la puissance brute du Tesla P100, Nvidia annonce 10.6 Tflops avec GPU Boost en FP32, la précision classique, un gain de 60% par rapport aux 6.6 Tflops de la Titan X. L'architecture Pascal dans cette implémentation supporte également la double précision en demi-vitesse, soit 5.3 Tflops, un nouveau bond en avant par rapport au record actuel : 2.6 Tflops pour le GPU Hawaii d'AMD des FirePro W9100 et S9170. Dans l'autre sens, Pascal supporte également la demi-précision, le FP16, et peut alors monter à 21.2 Tflops.

A quelle configuration de GPU pourrait correspondre tout cela ? Au départ, nous supposions que le nombre d'unités de calcul passerait de 3072 sur le GM200 à 4608 sur le P100, réparties dans 36 blocs d'unités de calcul (SMP ?), ce qui aurait permis assez facilement d'augmenter à peu près toutes les capacités brutes du GPU de 50%. Il n'en est cependant rien et les changements sont plus profonds au niveau de l'architecture. Il s'agit ainsi pour le Tesla P100 de 3584 unités de calcul réparties dans 56 blocs de 64, mais le GP100 continent physiquement 60 de ces blocs.

Le gain de puissance de calcul brute provient ainsi principalement d'une hausse de la fréquence du GPU (+/- 1.5 GHz) alors que le GPU computing devrait profiter de cette organisation en plus petits blocs d'unités de calcul, mais également des autres évolutions de l'architecture Pascal, pour gagner en efficacité.

Sur ce point, Nvidia se contente de parler d'une augmentation de la taille du fichier registre. Au total le GM200 embarque +/- 6 Mo de registres, ce qui correspond à 256 Ko par SMM ou encore à 512 registres 32-bit par unités de calcul. Le GP100 passe à 15 Mo de registres, ce qui implique une augmentation de 100%, soit 256 Ko par SMP ou encore 1024 registres 32-bit par unité de calcul. De quoi permettre de maintenir un meilleur taux d'occupation des unités de calcul, particulièrement en double précision.

Le cache L2 passe de son côté de 3 à 4 Mo alors que l'interface mémoire est large de 4096-bit en HBM2. Nvidia annonce une bande passante de 720 Go/s pour les 16 Go de mémoire HBM2 CoWoS, le nom donné par TSMC à sa technologie 2.5D, similaire à celle employée par AMD pour son GPU Fiji.

Ce passage à la mémoire HBM2, associé à NVLink, à la puissance de calcul en hausse et au support de la précision FP16 permet au Tesla P100 d'afficher une progression conséquente sur différents plans par rapport à ses prédécesseurs.

Jen-Hsun Huang a terminé le chapitre consacré à Pascal en déclarant que la production en volume avait débuté et que son propre serveur basé sur le Tesla P100 serait commercialisé à partir du mois de juin. Il est probablement raisonnable de s'attendre à une nouvelle GeForce Titan d'ici là, mais sera-t-elle basée sur le GP100 ?

GPUOpen, la réponse d'AMD à GameWorks

Publié le 15/12/2015 à 15:50 par Damien Triolet

Pour répondre au GameWorks propriétaire de Nvidia, AMD renforce sa stratégie open source avec l'ouverture prochaine d'un portail dédié : GPUOpen. Au menu, des samples et des outils distribués sans restrictions dans l'optique de favoriser un partage de connaissances bénéfique pour l'évolution des techniques de rendu.


Lors de l'introduction de ses nouveaux pilotes, Radeon Software Crimson Edition, le Radeon Technology Group d'AMD avait annoncé que ceux-ci ne représentaient qu'un pan de sa stratégie au niveau software et que d'autres éléments suivraient. C'est le cas aujourd'hui avec GPUOpen, une remise en forme de sa stratégie à destination des développeurs. Comme le nom de cette initiative l'indique, AMD mise sur l'open source, tout d'abord dans le monde du jeu vidéo pour lequel les spécialistes du GPU fournissent samples, librairies et autres outils destinés à aider les développeurs à améliorer le rendu graphique et/ou les performances.

Et sans directement citer son concurrent, c'est bien entendu à l'aspect fermé de GameWorks qu'entend s'attaquer AMD. Nvidia préfère en effet conserver un contrôle total sur certaines librairies et dans certains cas les exploiter en priorité de manière à dégager un avantage compétitif direct plutôt qu'à simplement mettre dans les mains des développeurs de quoi les aider à améliorer leurs jeux. Si la philosophie d'AMD est en général tournée vers l'ouverture, il ne faut pas oublier que ces orientations sont également dictées par la force de chacun sur le marché. Nvidia peut profiter du poids de ses parts de marchés énormes pour imposer une stratégie agressive, ce que pourrait difficilement faire AMD dans sa situation actuelle.


A la base de GPUOpen se trouve une philosophie relativement simple : les meilleures innovations découlent du partage des connaissances. L'évolution du rendu graphique dans les jeux est progressive et se fait par petites améliorations successives apportées par différents développeurs. AMD entend donc faire en sorte que sa contribution ne puisse pas entraver cette évolution et pour cela le passage par l'open source est évidemment préférable aux boîtes noires que peuvent représenter certaines librairies concurrentes.


AMD entend ainsi lancer le portail GPUOpen avec un ensemble de contenu open source distribué sur GitHub (via une licence MIT qui offre une exploitation du code sans restrictions). Des effets graphiques directement exploitables, des outils, des bibliothèques et des SDK seront proposés sur ce portail qui sera ouvert dans le courant du mois de janvier. Le succès de cette initiative dépendra bien entendu de la capacité d'AMD à enrichir régulièrement son portail avec de nouvelles choses et avec le niveau de qualité requis pour convaincre un maximum de développeurs, notamment dans le cadre des nouvelles API de bas niveau.


Parallèlement, AMD rappelle que Linux profite depuis quelques temps d'efforts supplémentaires avec AMDGPU, un pilote qui unifie des pans ouverts et fermés/propriétaires avec une même structure, ce qui facilite leur exploitation et leur évolution. A la base d'AMDGPU se trouve un pilote open source (en kernel space) qui peut recevoir des modules ouverts ou fermés suivant les besoins. De quoi permettre à AMD de proposer, sur une même base, un pilote full open source et un autre optimisé pour les performances dans le cadre du jeu et des applications professionnelles. Typiquement, le module OpenGL fermé reste plus performant par exemple mais AMD a pour objectif de passer en open source dès que possible le module OpenCL/Vulkan du pilote "fermé".


L'open source ne concerne évidemment pas que le jeu vidéo et AMD insiste sur son infrastructure open source complète pour le GPU computing ce qui englobe ces nouveaux pilotes Linux et les compilateurs pour lesquels des nouveautés avaient été dévoilées il y a peu. Un ensemble qui permet aux développeurs de mieux comprendre comment leur code est interprété et éventuellement de faciliter l'optimisation et le débogage. Ce qui ne remplace bien entendu pas le besoin pour AMD, avant toute chose, de fournir des outils de qualité et de proposer un écosystème robuste pour convaincre le monde du HPC d'accorder sa confiance dans ses solutions.


Vous retrouverez la présentation complète ci-dessous :

 
 

AMD et HPC: nouveaux outils, support de CUDA

Tags : AMD; CUDA; GPGPU; HSA;
Publié le 16/11/2015 à 14:30 par Damien Triolet

AMD profite du forum SC15 pour annoncer l'initiative Boltzmann, un ensemble de nouveaux outils dédiés à renforcer sa présence dans le HPC, notamment via un portage du code CUDA.

Il y a quelques semaines, le départ de Phil Rogers d'AMD pour rejoindre Nvidia a pu soulever quelques inquiétudes. Cet ingénieur émérite était la figure de proue de la HSA, la plateforme ouverte dédiée au calcul hétérogène ("CPU + GPU"), poussée par AMD avec le support du monde ARM. Une perte incontestable pour AMD qui mise beaucoup sur la HSA, que ce soit au niveau du HPC (calcul haute performances) ou du grand public.


A l'occasion du SC15 (SuperComputing), AMD tient cependant à rassurer quant à l'avenir de la HSA et de son écosystème dédié au calcul hétérogène. De nombreux développements, dédiés initialement au monde professionnel, sont en cours de finalisation et, avec une bonne dose de pragmatisme, ont pour objectif commun d'apporter aux développeurs et aux clients potentiels les outils dont ils ont besoin. AMD regroupe cet ensemble de développements sous le nom de code "Initiative Boltzmann", en référence au physicien Ludwig Eduard Boltzmann dont les équations profitent aujourd'hui de la puissance de calcul des GPU.


Sans donner de précisions liées au hardware, les annonces sont concentrées sur le software, AMD annonce tout d'abord l'extension du support de la HSA des APU (Kaveri) vers les GPU dédiés. Pour cela, AMD proposera un nouveau pilote Linux headless, c'est-à-dire totalement dédié au calcul, allégé du support des parties graphiques et vidéo. De quoi proposer plus facilement un adressage mémoire unifié entre les CPU et les GPU (et rattraper Nvidia sur ce point crucial), réduire la latence des transferts PCIe et de l'envoi des commandes, mieux exploiter tout le sous-système mémoire des GPU etc. Des systèmes de gestion spécifique des GPU (fréquences turbo etc.) seront également proposés ainsi qu'un support étendu de la communication P2P, y compris pour des GPU présents dans des nœuds différents dans le cadre des supercalculateurs.


Ensuite, AMD annonce un nouveau compilateur : HCC pour Heterogeneous Compute Compiler. Il s'agit d'un compilateur de type source unique, c'est-à-dire qu'il traite autant le code CPU que le code GPU mis en avant à l'aide de directives (à la manière de C++ AMP de Microsoft). HCC est compatible C++ 11/14, C11 et OpenMP 4.0. Il propose par ailleurs un support alpha de la Parallel Standard Template Library de C++17 (C++1z), la prochaine révision de C++ attendue pour 2017. AMD annonce différentes optimisations qui devraient profiter aux performances tels qu'une meilleure gestion de la mémoire et le support de l'exécution asynchrone des kernels (et concomitante).


Enfin, AMD fait face à la réalité : CUDA de Nvidia est bien implanté dans le monde du HPC. Suffisamment pour que sa seule stratégie à ce niveau ne puisse plus se résumer à essayer de nier cet état de fait avec des statistiques d'utilisation d'OpenCL chez les développeurs. Avec pragmatisme, AMD annonce ainsi l'interface HIP (Heterogeneous-compute Interface for Portability) dont le but est de permettre au code CUDA de tourner sur ses propres GPU.

Cela se fera de manière indirecte bien entendu, avec des outils qui porteront le code source CUDA vers un language C++ commun (cudaMemcpy -> hipMemCpy). Après conversion, le code pourra ensuite tourner aussi bien sur les GPU Nvidia via le compilateur NVCC que sur les GPU AMD via le compilateur HCC. AMD indique que d'après ses tests, 90% du code CUDA peut être automatiquement porté alors que les 10% restants doivent être traités manuellement mais en C++ standard. AMD estime que cela devrait répondre aux demandes du marché qui appréciera l'ouverture de l'offre matérielle pour une bonne partie des systèmes amenés à faire tourner du code CUDA. A voir par contre si Nvidia appréciera cette initiative de la même manière...

A noter que ce support du code CUDA reste partiel et ne concerne que l'ensemble de plus haut niveau, soit le code C/C++ CUDA pour l'API runtime. Le code qui vise l'API driver ainsi que le code PTX ne seront pas supportés, tout du moins initialement.

AMD fera la démonstration de ces outils durant le SC15 et une première version beta sera mise dans les mains des développeurs au premier trimestre 2016.

 
 

AMD lance la FirePro S9170: Hawaii et 32 Go

Tags : AMD; FirePro; GPGPU; Hawaii;
Publié le 09/07/2015 à 01:00 par Damien Triolet

AMD profite de l'été pour annoncer l'arrivée d'une nouvelle carte accélératrice dédiée aux serveurs : la FirePro S9170. Outre une puissance de calcul importante, celle-ci a la particularité d'embarquer pas moins de 32 Go de mémoire.


AMD propose pour rappel deux gammes principales de cartes professionnelles hautes performances. D'un côté la série W dédiée aux workstations et d'un autre la série S dédiée aux serveurs. AMD ne différencie par contre pas directement ses solutions en fonctions des usages comme peut le faire Nvidia avec les Quadro dédiées au graphisme professionnel et les Tesla au calcul haute performance (HPC).

Au niveau logiciel, les FirePro S peuvent ainsi profiter de toutes les optimisations logicielles et autres validations spécifiques aux applications graphiques. Les FirePro S se distinguent par contre au niveau du format. Elles sont refroidies passivement et dépourvues de sorties vidéo et sont donc en pratique plutôt orientées vers le HPC bien qu'elles puisse également être exploitées pour fournir des stations de travail virtuelles à travers le cloud ou un réseau interne.

Après la FirePro S9150 16 Go lancée l'été passé, AMD propose aujourd'hui une FirePro S9170 similaire si ce n'est qu'elle est cette fois équipée de plus de mémoire :


Avec une petite hausse de la fréquence du GPU Hawaii (exploité sur les Radeon R9 290X/390X), la puissance de calcul progresse de 3% et s'aligne sur celle de la FirePro W9100. Un changement plus pour la forme qu'autre chose, la seule réelle nouveauté étant à chercher du côté de l'espace mémoire qui est doublé. AMD profite pour cela de l'arrivée de la mémoire GDDR5 avec une densité de 8 Gb, soit 1 Go par puce. Un bus 512-bit couplé au mode clamshell de la GDDR5 (association de puces mémoire par paires) permet d'adresser 32 de ces puces pour un total de 32 Go, un nouveau record.

Nvidia annoncera probablement une évolution similaire avec la mémoire 8 Gb, mais ne pourra pas aller au-delà de 24 Go, son gros GPU actuel dédié au monde professionnel, le GK210 devant se contenter d'un bus 384-bit.

Si AMD ne fait pas appel à son dernier GPU en date, Fiji, c'est parce que celui-ci est actuellement limité à 4 Go de mémoire HBM, insuffisant sur le marché professionnel. Par ailleurs, le GPU Fiji est relativement lent en calcul double précision (1/16ème de la simple précision), un point qui est la force du GPU Hawaii, capable de traiter ces calculs à demi vitesse. De quoi proposer plus de 2.5 Tflops là où la Tesla K40 de Nvidia se contente plutôt de +/- 1.5 Tflops suivant le mode de Turbo qui a été activé (manuellement sur cette carte).

AMD précise par ailleurs qu'il ne s'agit pas que de gros chiffres théoriques et que le rendement est assez élevé avec 79% en DGEMM (multiplication de matrices), ce qui permet d'atteindre 2 Tflops sur les FirePro S9150 et S9170.

Ces débits soutenus sont également autorisés par un TDP très élevé. Il passe d'ailleurs de 235W pour la S9150 à 275W pour la S9170, ce qui demandera une capacité de refroidissement importante au niveau du serveur. Si cela pose problème, ou tout simplement pour gagner en efficacité énergétique, la S9170 pourra être configurée en mode 235W mais aura alors plus de mal à maintenir sa fréquence maximale lors du traitement de tâches lourdes.

Outre la puissance de calcul et la quantité de mémoire embarquée, AMD met en avant son support des standards ouverts tels qu'OpenCL 2.0 ou encore OpenMP 4.0 et OpenACC à travers un partenariat avec PathScale.

AMD annonce une disponibilité de la FirePro S9170 pour cet été avec une tarification proche de celle de la FirePro S9150 qui devrait donc tourner autour de 4000$. En plus de s'opposer aux solutions de Nvidia, elle devra également lutter contre les Xeon Phi d'Intel dont le prometteur Knights Landing ne devrait plus tarder.

 
 

Top articles