Kepler, la nouvelle architecture de processeur graphique de NVIDIA
Présentation des nouvelles technologies et des performances
Annoncée depuis plusieurs mois, la nouvelle architecture de carte graphique de NVIDIA a été officiellement annoncée la semaine dernière. Cette nouvelle architecture est destinée à concurrencer la nouvelle architecture de AMD sortie le mois dernier.
La première carte de cette gamme se nomme GTX 680 et est basée sur la puce GK104. Pour la génération précédente (architecture FERMI), NVIDIA s'était focalisé sur l'ajout de la tessellation et l'amélioration des performances. Pour Kepler, NVIDIA a travaillé principalement sur la consommation d'énergie : gravure 28nm, nouveaux SMX, GPU Boost pour la gestion dynamique de la fréquence. Il faut donc faire attention au fait que NVIDIA présente régulièrement les performances de la carte en fonction du rapport Performance/Consommation et pas uniquement des performances. La conséquence est que les chiffres NVIDIA donnent une amélioration de +50 % alors que les chiffres non officiels sont de +10 %, mais ces chiffres ne correspondent pas exactement à la même chose mesurée.
Le GK104 présente des caractéristiques intéressantes sur le papier :
- gravure en 28 nm pour diminuer la consommation et la chaleur dégagée et augmentation du nombre de transistors à 3,54 billions ;
- fréquence de base de 1006 MHz (accélérable à 1058 MHz) ;
- nouvelle version de Streaming Multiprocessor, appelé SMX, permettant d'avoir 1536 Shader Processors (8 SMX * 192 cœurs), 32 unités ROP et 128 unités de textures. Particularité importante, sur FERMI, les shaders tournaient à une fréquence d'horloge double de celle de la carte. Cette approche a été abandonnée dans le SMX au profit de l'augmentation du nombre de cœurs pris en charge par chaque SMX ;
- technologie GPU Boost. Cette technique permet d'adapter dynamiquement la fréquence horloge et les tensions d'alimentation en fonction de la puissance réellement consommée par une application et non en se basant sur une température théorique (TPD : thermal design point) ;
- synchronisation verticale adaptative (Adaptive V-SYNC). Cette technique permet d'activer automatiquement la synchronisation verticale (pour éviter certains artefacts de déchirement de l'image) lorsque les FPS sont supérieurs à 60 images par seconde. En dessous de 60 FPS, la synchronisation verticale est désactivée pour éviter une perte importante de FPS (par exemple, avec un FPS théorique de 55, la synchronisation verticale bloquera le FPS à 30 si elle est active) ;
- nouvel algorithme d'anti-aliasing plus rapide, appelé TXAA, dont on peut voir les résultats sur la démo Samaritain ;
- nouvelle technologie de gestion des textures, appelée Bindless Textures, permettant de gérer jusqu'à un million de textures ;
- un système dédié d'encodage, appelé NVENC, permettant de lire de la vidéo au format H.264 à 1080p ;
- NVIDIA Surround : possibilité d'utiliser 3 moniteurs sur une seule carte ;
- 2 Go de GRAM ;
- PCI-Express 3.0 ;
- consommation annoncée de 195 W (pour rappel, la GTX580 consommait 244 W).
La sortie des pilotes optimisés pour cette puce (301.10 pour Windows et 295.33 pour Linux) est l'occasion de faire le tour des dernières versions des bibliothèques et des nouvelles fonctionnalités proposées.
DirectX 11.1 apporte de nombreuses nouvelles fonctionnalités :
- amélioration du compilateur et ajout de fonctions HLSL permettant de tracer les shaders ;
- possibilité de partager des contextes Direct3D 10 et 11 ;
- augmentation de la taille des buffers constants supportés jusqu'à 64 Ko ;
- possibilité d'utiliser des opérateurs logiques à la place du blending ;
- utilisation des shaders pour travailler directement sur des vidéos ;
- support étendu pour le partage des textures 2D.
Pour OpenGL 4.2, deux nouvelles extensions sont proposées :
- multi_draw_indirect est une extension de draw_indirect. Cette extension, introduite dans OpenGL 4.0, permet de récupérer les informations produites par une fonction dans un buffer object et de retravailler dessus (feedback). multi_draw_indirect ajoute en plus la possibilité de lancer plusieurs commandes avec un seul appel de fonction ;
- les shader_atomic_float, qui sont un équivalent des compteurs atomiques mais avec un float au lieu d'un entier. Cette extension pourra permettre par exemple d'utiliser des techniques avancées de culling sur GPU.
La nouvelle carte est disponible depuis quelques jours pour les tests. On en sait un peu plus sur les performances réelles de cette carte :
- des performances exceptionnelles pour la tessellation (2 à 3 fois plus rapide que toutes les autres cartes actuelles) ;
- des performances pour les jeux améliorées. Les différents tests placent la GTX680 entre la nouvelle carte AMD (7970) et les cartes bi-processeurs (GTX690 et AMD 6990)
Pour le moment, les jeux et les benchmarks ne sont pas optimisés pour cette nouvelle architecture donc on peut s'attendre, comme d'habitude, à une amélioration des performances dans les prochaines mises à jour des jeux et pilotes ;- pour la gestion de la physique, la GK104 ne possède pas de circuit dédié spécifiquement à PhysX. Les performances sont similaires ou légèrement supérieures à celles de la GTX580 en fonction des tests effectués ;
- plusieurs tests présentent des benchmarks sur le GPU Computing. Malheureusement, ces tests ne sont pas significatifs pour le moment puisqu'ils ont été faits avant la sortie des pilotes 301.10. NVIDIA recommande d'ailleurs d'utiliser les pilotes 295.33 et le CUDA Toolkit 4.2.6. De plus, NVIDIA se focalisant plus sur sa technologie propre (CUDA) plutôt que sur OpenCL, il faudra peut-être attendre un peu de temps pour avoir des tests plus fiables. Cependant, des rumeurs évoquent le fait que l'architecture de Kepler serait moins orientée GPU Computing que Fermi, mais il faudra attendre que NVIDIA sorte les notes techniques pour vérifier la véracité de ces rumeurs.
Et puisqu'on n'a jamais assez de nouvelles, des rumeurs sur internet donnent les caractéristiques de la prochaine carte, la GTX685 basée sur la puce GK110, avec 2304 cœurs et une augmentation des performances de 50% par rapport à la GTX680. Cette carte devrait sortir en août 2012.
Que pensez-vous de cette nouvelle architecture ? Réel bénéfice pour les joueurs ou simple évolution marketing ?
Quelles sont les nouvelles technologies qui vous paraissent les plus intéressantes ? Celles qui manquent encore ?
Pour ceux qui font du GPU Computing, craignez-vous également que cette puce soit moins performante pour vos applications ?
Sources :
[NVIDIA] GeForce GTX-680 Whitepaper
Présentation du TXAA lors de la Game Developers Conference 2012
[Geeks3D] NVIDIA GeForce GTX 680 (Kepler GK104 GPU) Officially Launched
[Geeks3D] NVIDIA R301.10 WHQL Graphics Drivers for GeForce GTX 680
[Geeks3D] GeForce GTX 680: HD 6990 vs GTX 690, GTX 685 GK110 Possible Specs
[Geeks3D] GeForce GTX 680: New Pictures and First Tests (Noise, Temperature, OpenCL)
Test • nVIDIA GeFORCE GTX 680
GTX 680: PhysX Benchmarks roundup
[MSDN] Direct3D 11.1 Features
Partager