Maxwell (microarchitecture)

NVIDIA Maxwell
Description de l'image Nvidia (logo).svg.
Caractéristiques
Date de sortie février 2014 (1re génération)
septembre 2014 (2e génération)
Procédé TSMC 28 nm
Nombre de
transistors
  • 8,00 G (GM200)
  • 5,20 G (GM204)
  • 2,94 G (GM206)
  • 1,87 G (GM107)
  • 1,02 G (GM108)
Mémoire GDDR5
Interfaces supportées
CUDA (Compute Capability) 5.0 (1re génération)
5.2 (2e génération)
Historique
Prédécesseur Kepler
Successeur Pascal

Maxwell est une architecture de processeurs graphiques, développée par NVidia pour ses cartes graphiques.

Architecture

Cette architecture est dérivée de l'architecture Kepler. Parmi les différences, les SMX sont renommés en SMM, et perdent un tiers de leur unités CUDA[1].

GPU Maxwell de première génération (GM10x)

Puce Maxwell 107 sur une carte graphique GTX 750 Ti après démontage du radiateur.

La première génération de GPU Maxwell (GM107/GM108) a été introduite dans les cartes GeForce GTX 745, GTX 750/750 Ti, GTX 850M/860M (GM107) et dans les cartes GeForce 830M/840M (GM108). Ces nouvelles puces introduisent peu de nouvelles fonctionnalités pour l'utilisateur, Nvidia insistant plus sur l'efficacité énergétique accrue des GPU. La taille du cache L2 est passée de 256 KiB sur Kepler à 2 MiB sur Maxwell, réduisant le besoin d'une plus grande bande passante de la mémoire. Par conséquent, la largeur du bus mémoire a été réduite de 192 bits sur Kepler (GK106) à 128 bits, réduisant la surface de la puce, le coût et la consommation[2].

La conception du multiprocesseur de flux "SMX" de Kepler a également été retravaillée et partitionnée, et renommée "SMM" pour Maxwell. La structure de l'ordonnanceur de warps a été héritée de Kepler, les TMU et les coeurs CUDA FP64 étant encore partagés, mais l'agencement de la plupart des unités d'exécution a été partitionné de telle sorte que chaque ordonnanceur de warps dans un SMM contrôle un ensemble de 32 coeurs CUDA FP32, un ensemble de 8 unités load/store et un ensemble de 8 unités de fonctions spéciales (SFU). Ceci est différent avec Kepler, où chaque SMX possède 4 ordonnanceurs qui pilotent un pool partagé d'unités d'exécution[3]. Cette dernière conception nécessitait un bus de la taille du SMX qui employait une énergie inutile pour permettre à toutes les unités d'exécution d'être partagées[3]. Par opposition, la conception plus modulaire de Maxwell permet une allocation plus fine et plus efficace des ressources, économisant de l'énergie lorsque la charge de travail n'est pas optimale pour les ressources partagées. Nvidia estime qu'un SMM avec 128 coeurs CUDA a 90 % de la performance d'un SMX avec 192 coeurs CUDA tandis que l'efficacité est accrue d'un facteur 2[2]. Par ailleurs, chaque Graphics Processing Cluster, ou GPC, contient jusqu'à 4 SMX dans Kepler, et jusqu'à 5 SMM dans la première génération de Maxwell[2].

GM107 supporte également le CUDA Compute Capability 5.0, contre les versions 3.5 sur les GPU GK110/GK208 et 3.0 sur les GPU GK10x. Dynamic Parallelism et HyperQ, deux fonctionnalités des GPU GK110/GK208, sont aussi supportées sur toute la gamme des GPU Maxwell.

Le codeur vidéo de Nvidia, NVENC, a été amélioré pour être 1,5 à 2 fois plus rapide que sur les GPU Kepler, signifiant qu'il peut coder de la vidéo six à huit fois plus rapidement que la vitesse de lecture[2]. Nvidia revendique aussi une augmentation d'un facteur huit à dix des performances du décodage vidéo PureVideo (en) avec l'ensemble de caractéristiques E due au cache du décodeur vidéo, associée à une augmentation des performances de la mémoire. Cependant, le décodage complètement hardware du H.265 n'est pas supporté par la première génération de GPU Maxwell, s'appuyant sur un mélange de décodage hardware et software[2]. Lors du décodage vidéo, un nouvel état basse puissance "GC5" est utilisé sur les GPU GPU pour économiser l'énergie[2].

GPU Maxwell de deuxième génération (GM20x)

Die shot du GPU GM200 équipant les cartes GeForce GTX 980 Ti.

Les GPU Maxwell de deuxième génération ont introduit plusieurs nouvelles technologies : Résolution Super Dynamique[4], compression couleur Delta de troisième génération[5], échantillonnage de programmation multi-pixel[6], Nvidia VXGI (Illumination globale en temps réel des voxels[7], VR Direct[7],[8],[9], accélération multi-projection[5], Multi-Frame Sampled Anti-Aliasing (MFAA, anticrénelage par échantillonnage multi-cadre)[10] (cependant, le support du Coverage-Sampling Anti-Aliasing (CSAA, anticrénelage par échantillonnage de couverture) a été supprimé)[11], et de l’API Direct3D12 au niveau de la fonctionnalité 12_1. Le support de HDMI 2.0 a également été ajouté[12],[13].

Le ratio nombre de ROP/contrôleur mémoire est passé de 8:1 à 16:1[14]. Cependant, certains ROP sont généralement au ralenti sur la carte GTX 970 car il n’y a pas assez de SMM activés pour leur fournir du travail, ce qui réduit son taux de remplissage maximal[15].

Le moteur Polymorph responsable du pavage a été mis à niveau à la version 3.0 dans les GPU Maxwell de deuxième génération, ce qui a amélioré le taux de pavage par cycle d'horloge.

La deuxième génération de Maxwell possède jusqu’à 4 unités SMM par GPC, contre un maximum de 5 unités SMM par GPC sur la première génération[14].

GM204 prend en charge la capacité de calcul CUDA 5.2 (contre 5.0 sur les GPU GM107/GM108, 3.5 sur les GPU GK110/GK208 et 3.0 sur les GPU GK10x)[5],[14],[16].

Les GPU GM20x disposent d’un codeur NVENC amélioré qui prend en charge l’encodage HEVC et ajoute la prise en charge des résolutions de codage H.264 à 1440p/60 FPS et 4K/60 FPS (comparé à NVENC sur les GPU GM10x de première génération Maxwell qui ne prenaient en charge que l’encodage H.264 1080p/60 FPS)[9].

Après des plaintes des consommateurs[17], Nvidia a révélé qu’il pouvait désactiver des unités individuelles, chacune contenant 256 Ko de cache L2 et 8 ROP, sans désactiver des contrôleurs mémoire complets[18]. Cela se fait au prix de diviser le bus mémoire en segments haute vitesse et basse vitesse qui ne peuvent pas être accédés simultanément pour les lectures, car l’unité L2/ROP gérant les deux contrôleurs GDDR5 partage le canal de retour de lecture et le bus de données d’écriture entre les contrôleurs GDDR5. Cela rend impossible la lecture simultanée des deux contrôleurs GDDR5 ou l’écriture simultanée sur les deux contrôleurs GDDR5[18]. Cette technique est utilisée dans la GeForce GTX 970, qui peut donc être décrite comme ayant 3,5 Go dans un segment haute vitesse sur un bus 224 bits et 512 Mo dans un segment basse vitesse sur un bus 32 bits[18]. La vitesse maximale d’un tel GPU peut encore être atteinte, mais la vitesse maximale n’est atteignable que si un segment exécute une opération de lecture tandis que l’autre exécute une opération d’écriture.

Modèles de cartes graphiques

Sous la marque GeForce

ModèlesGeForce GTX 750GeForce GTX 750 TiGeForce GTX 950GeForce GTX 960GeForce GTX 970GeForce GTX 980 GeForce GTX 980 TiGeForce GTX Titan X
Finesse de gravure des processeurs28 nm
Code de la puceGM107-300 GM107-400GM206-250 GM206-300GM204-200 GM204-400 GM200-310GM200-400
Surface de la puce148 mm²228 mm²398 mm² 601 mm²
Nb. de transistors1,9 G2,9 G5,2 G 8,1 G
Fréquence 3D1019 MHz1024 MHz1120 MHz1120 MHz 1000 MHz
Fréquence Turbo≈ 1100 MHz≈ 1200 MHz≈ 1200 MHz 1076 Mhz1088 MHz
Température maximale avec Turbo80 °C??80 °C ?83 °C
Nb. Graphics Processing Cluster (GPC)124 6
Nb. Streaming Multiprocessor (SMM)45681316 2224
Nb. cœurs CUDA512640768102416642048 28163072
Nb. TMU32404864104128 176192
Nb. ROP1632566496
Nb. Special Functions Units (SFU)?
Enveloppe thermique (TDP)60 W65 W90 W120 W150 W180 W 250 W250 W
Type de mémoireGDDR5
Capacité possible1 Go2 Go2 Go4 Go 6 Go12 Go
Fréquence mémoire1250 MHz1350 MHz1653 MHz1753 MHz1753 MHz 1753 MHz
Largeur du bus mémoire128 bits128 bits224 bits256 bits 384 bits
Débit mémoire74,5 Go/s80,5 Go/s106 Go/s114 Go/s196 Go/s224 Go/s 336 Go/s
Pixels Fillrate17,3 Gpixel/s32.8 GPixel/s38 Gpixel/s61 Gpixel/s78 Gpixel/s 103 Gpixel/s
Textures Fillrate34 Gtexel/s43 Gtexel/s49.1 GTexel/s72.1 GTexel/s
Fillrate Géométrique1445 Mtriangle/s1807 Mtriangle/s
Calcul Simple Précision1111 Gflops1388 Gflops1573 Gflops2408 Gflops3913 Gflops4980 Gflops 6060 Gflops6156 Gflops
Calcul Double Précision34 Gflops43 Gflops49 Gflops75 Gflops122 Gflops155 Gflops 189 Gflops206 Gflops
Date18/02/201420/08/201523/01/201519/09/2014 02/06/201504/2015

Notes et références

  1. dossier complet, hardware.fr, 26/02/2014.
  2. 1 2 3 4 5 6 (en-US) Ryan Smith et Ganesh T S, « The NVIDIA GeForce GTX 750 Ti and GTX 750 Review: Maxwell Makes Its Move (archivé depuis l'original) », AnandTech, (consulté le )
  3. 1 2 (en-US) Ryan Smith et Ganesh T S, « Maxwell: Designed For Energy Efficiency - The NVIDIA GeForce GTX 750 Ti and GTX 750 Review: Maxwell Makes Its Move (archivé depuis l'original) »
  4. (en-US) « Dynamic Super Resolution Improves Your Games With 4K-Quality Graphics On HD Monitors », sur www.nvidia.com
  5. 1 2 3 (en-US) « White paper Final (Archived copy) » (consulté le )
  6. (en-US) « NVIDIA BatteryBoost: Ditch the Brick », sur nvidia.com
  7. 1 2 (en-US) « GeForce Articles, Guides, Gaming News, Featured Stories », sur www.nvidia.com
  8. (en-US) « How Maxwell's VR Direct Brings Virtual Reality Gaming Closer to Reality », The Official NVIDIA Blog
  9. 1 2 (en-US) Ryan Smith, « Display Matters: HDMI 2.0, HEVC, & VR Direct - The NVIDIA GeForce GTX 980 Review: Maxwell Mark 2 (archivé depuis l'original) »
  10. « Multi-Frame Sampled Anti-Aliasing Delivers Better Performance To Maxwell Gamers », sur www.nvidia.com
  11. (en) « New nVidia Maxwell chips do not support fast CSAA »
  12. (en-US) « GeForce RTX 20 Series Graphics Cards and Laptops », sur nvidia.com
  13. (en-US) Ryan Smith, « The NVIDIA GeForce GTX 980 Review: Maxwell Mark 2 (archivé depuis l'original) »
  14. 1 2 3 (en-US) Ryan Smith, « Maxwell 2 Architecture: Introducing GM204 - The NVIDIA GeForce GTX 980 Review: Maxwell Mark 2 (archivé depuis l'original) »
  15. (en) « Here's another reason the GeForce GTX 970 is slower than the GTX 980 », The Tech Report
  16. « Maxwell: The Most Advanced CUDA GPU Ever Made », Parallel Forall,
  17. (en-US) Geoffrey Tim, « Nvidia's GTX970 has a rather serious memory allocation bug », Lazygamer.net,
  18. 1 2 3 (en-US) Ryan Smith, « Diving Deeper: The Maxwell 2 Memory Crossbar & ROP Partitions - GeForce GTX 970: Correcting The Specs & Exploring Memory Allocation (archivé depuis l'original) »
  • inclut des portions de Kepler version 98992978
  • icône décorative Portail de l’électricité et de l’électronique
  • icône décorative Portail de l’informatique