Fermi (microarchitecture)
Fermi est le nom de code d'une architecture de processeur graphique (GPU) de la société NVidia[1]. Les premiers processeurs, gravés en 40 nm, sont sortis en mars 2010[2] et comportent plus de 3 milliards de transistors, soit plus qu'un microprocesseur courant. Certaines cartes GeForce 600M disposent de processeurs gravés en 28 nm au lieu de 40 nm[3].
Historique
modifier- , NVidia sort la GTX 480, la première carte graphique à utiliser l'architecture Fermi avec le GF 100. Même si la carte est la plus puissante du moment elle souffre d'une surconsommation, de températures très élevées, tout en étant bruyante. À cause de ces inconvénients un des SM est désactivé.
- , sortie de la GTX 580, par rapport au GF 100 de la GTX 480, son GF 110 dispose des 16 SM de Fermi, et de petites améliorations permettent de réduire un peu la consommation, et l'utilisation d'un refroidissement amélioré réduit les nuisances sonores.
- , lancement de la GTX 590, une carte bi-GPU qui utilise deux GF 110. C'est la plus puissante carte utilisant l'architecture Fermi.
- , arrêt de la fabrication des GTX 580 et abandon de l'architecture Fermi.
On retrouve une puce gravée en 40 nm contenant quatre GPC. Chaque GPC contient quatre SM (Streaming Multiprocessor) qui contiennent diverses unités spécialisées (comme les unités de ROP ou de texture, par exemple). Une puce contient 48 unités de ROP. Pour soutenir les SM, la puce propose deux niveaux de mémoire cache auxquels il faut ajouter la quantité de GDDR5[4].
Le GPC
modifierLe GPC ou Graphics Processing Cluster est l’équivalent d'un cœur d'un microprocesseur sauf qu'il est dépourvu de mémoire cache, il est constitué de quatre SM.
Le SM
modifierUn SM (Streaming Multiprocessor) peut contenir jusqu'à 32 cœurs CUDA et quatre unités de texture dans la version la plus évoluée, ainsi que le premier niveau de mémoire cache. Chaque SM se dote d'un double scheduler (ordonnanceur). Le scheduler est une sorte de chef de gare qui va agencer et distribuer le travail en fonction de la charge et des unités disponibles. Chaque scheduler peut envoyer une instruction à 16 processeurs CUDA à chaque cycle d'horloge. Le SM utilise le système de double cadencement qui multiplie par deux la fréquence des cœurs CUDA.
- GF100 : il est utilisé dans les GTX 480
- GF104 : il est utilisé dans les GTX 460
- GF106 : il est utilisé dans certaines GT 440, dans les GTS 450
- GF108 : il est utilisé dans les GT 430, certaines GT 440, GT 530, certaines GT 630, certaines GT 730
- GF110 : il est utilisé dans les GTX 560 Ti 448 Core, les GTX 570, les GTX 580 et les GTX 590
- GF114 : il est utilisé dans les GTX 560 Ti et les GTX 560
- GF116 : il est utilisé dans les GTX 550 Ti, GeForce GT 640
- GF119 : il est utilisé dans les GT 520[5], GeForce 605, GeForce GT 610, GeForce GT 620
- GF117 : gravure 28 nm[6]
Sous la marque GeForce
modifierModèles GeForce | GT 520 | GT 545 | GTX 550 Ti | GTX 560 SE | GTX 560 | GTX 560 Ti | GTX 560 Ti 448 | GTX 570 | GTX 580 | GTX 590 |
---|---|---|---|---|---|---|---|---|---|---|
Finesse de gravure | 40 nm | |||||||||
Code de la puce | GF119-300 | GF116 | GF116-400 | GF114-200 | GF114-325 | GF114-400 | GF110-270 | GF110-275 | GF110-375 | 2x GF110-351 |
Surface de la puce | 79 mm² | 238 mm² | 332 mm² | 520 mm² | 2x 520 mm² | |||||
Nombre de transistors | 0.29 G | 1.17 G | 1.95 G | 3.0 G | 3.0 G | |||||
Fréquence GPU (MHz) | 810 | 720 | 900 | 736 | 810 | 823 | 732 | 732 | 772 | 608 |
Fréquence Shaders (MHz) | 1620 | 1440 | 1800 | 1472 | 1620 | 1645 | 1467 | 1467 | 1544 | 1215 |
Nb. Cœurs CUDA | 48 | 144 | 192 | 288 | 336 | 384 | 448 | 480 | 512 | 2x 512 |
Nb. TMU | 8 | 24 | 32 | 48 | 56 | 64 | 56 | 60 | 64 | 2x 64 |
Nb. ROP | 4 | 16 | 24 | 24 | 32 | 32 | 40 | 40 | 48 | 2x 48 |
Cache L2 (ko) | 128 | 256 | 384 | 384 | 512 | 512 | 640 | 640 | 768 | 768 |
Type de mémoire | DDR3 | GDDR5 | GDDR5 | GDDR5 | GDDR5 | GDDR5 | GDDR5 | GDDR5 | GDDR5 | GDDR5 |
Capacité mémoire (Go) | 1 | 1.5 | 1 | 1 | 1 | 1 | 1.28 | 1.28 | 1.5 | 2 x 1.5 |
Largeur du bus mémoire (bits) | 64 | 128 | 192 | 192 | 256 | 256 | 320 | 320 | 384 | 2 x 384 |
Débit mémoire (Go/s) | 14.4 | 38.4 | 98.5 | 92 | 128 | 128 | 152 | 152 | 192 | 2 x 164 |
Fréquence mémoire (MHz) | 900 | 800 | 1026 | 957 | 1000 | 1000 | 950 | 950 | 1000 | 854 |
Enveloppe thermique (W) | 30 | 70 | 116 | 150 | 150 | 170 | 210 | 220 | 244 | 375 |
Calcul FP32 | 155 GFLOPS | 415 GFLOPS | 691 GFLOPS | 847 GFLOPS | 1.08 TFLOPs | 1.2 TFLOPs | 1.3 TFLOPs | 1.4 TFLOPs | 1.6 TFLOPs | 2.4 TFLOPs |
Calcul FP64 | 13 GFLOPS | 34 GFLOPS | 57 GFLOPS | 70 GFLOPS | 90 GFLOPS | 105 GFLOPS | 164 GFLOPS | 176 GFLOPS | 197 GFLOPS | 311 GFLOPS |
Date de sortie |
Sous la marque Quadro
modifierModèles | Quadro 600 | Quadro 2000 | Quadro 4000 | Quadro 5000 | Quadro 6000 | Quadro 7000 |
---|---|---|---|---|---|---|
Finesse de gravure | 40 nm | 40 nm | 40 nm | 40 nm | 40 nm | 40 nm |
Code de la puce | GF108 | GF106-875 | GF100-825 | GF100-850 | GF100-850 | GF110 |
Surface de la puce | 116 mm² | 238 mm² | 529 mm² | 529 mm² | 529 mm² | 520 mm² |
Nombre de transistors | 0.58 G | 1.17 G | 3.1 G | 3.1 G | 3.1 G | 3.0 G |
Fréquence GPU | 640 MHz | 625 MHz | 475 MHz | 513 MHz | 574 MHz | 651 MHz |
Fréquence Shaders | 1280 MHz | 1250 MHz | 950 MHz | 1026 MHz | 1157 MHz | 1301 MHz |
Nb. Cœurs CUDA | 96 | 192 | 256 | 352 | 448 | 512 |
Nb. unités de texture | 16 | 32 | 32 | 44 | 56 | 64 |
Nb. ROP | 4 | 16 | 32 | 40 | 48 | 48 |
Cache L2 | 128 Ko | 256 Ko | 512 Ko | 640 Ko | 768 Ko | 768 Ko |
Type de mémoire | DDR3 | GDDR5 | GDDR5 | GDDR5 | GDDR5 | GDDR5 |
Capacité mémoire | 1 Go | 1 Go | 2 Go | 2.5 Go | 6 Go | 6 Go |
Largeur du bus mémoire | 128 bits | 128 bits | 256 bits | 320 bits | 384 bits | 384 bits |
Débit mémoire | 25.6 Go/s | 41.6 Go/s | 89.8 Go/s | 120 Go/s | 143.4 Go/s | 177.4 Go/s |
Fréquence mémoire | 800 MHz | 650 MHz | 702 MHz | 750 MHz | 747 MHz | 924 MHz |
Enveloppe thermique (TDP) | 40 W | 60 W | 140 W | 150 W | 204 W | 204 W |
Calcul FP32 | 245 GFLOPS | 480 GFLOPS | 486 GFLOPS | 722 GFLOPS | 1.03 TFLOPS | 1.3 TFLOPS |
Calcul FP64 | 20 GFLOPS | 40 GFLOPS | 243 GFLOPS | 361 GFLOPS | 518 GFLOPS | 667 GFLOPS |
Date de sortie |
Nouvelles gammes
modifierSelon la roadmap de Nvidia, les nouvelles gammes de cartes se nomment respectivement Kepler et Maxwell [7]. Les gains en performance annoncés par le constructeur entre chaque gamme sont :
- 4-6 GFLOPS par watt en double précision pour Kepler
- 15-16 GFlops par watt en double précision pour Maxwell.
L'architecture Maxwell était attendue pour 2013 mais elle ne sera pas utilisée avant 2014[8].
Notes et références
modifier- [PDF] Whitepaper - NVIDIA’s Next Generation - CUDATM Compute Architecture: FermiTM V1.1, sur nvidia.fr, consulté le 27 septembre 2018
- nVidia présente Fermi, sa nouvelle architecture GPU aux performances de supercalculateur, sur zdnet.fr u 2 octobre 2009, consulté le 27 septembre 2018
- GeForce GT 640M, le Kepler mobile de NVIDIA, sur clubic.com du 26 mars 2012, consulté le 27 septembre 2018
- NVIDIA GeForce GTX 480 : DirectX 11 chez NVIDIA, sur clubic.com du 26 mars 2010, consulté le 27 septembre 2018
- Voir GeForce
- Nouvelles GeForce 600M : Fermi et Kepler, sur hardware.fr du 29 mars 2012, consulté le 27 septembre 2018
- (en) Hardware - NVidia Product Roadmap – Fermi, Kepler, and Maxwell, sur vizworld.com de septembre 2010, consulté le 27 septembre 2018
- Nvidia Kepler et Maxwell : 2012 et 2014, sur hardware.fr du 7 juillet 2011, consulté le 27 septembre 2018