Choisir sa carte graphique en fonction de sa référence


Classement des cartes graphiques par leur référence


Les conseils pour le choix d'une carte graphique sont donnés dans l'astuce :
Choisir une carte graphique pour son PC

Ici, on va essayer donner les clés de décodage pour comprendre comment les fabricants nomment leurs différentes cartes graphiques, dans la mesure du possible, car la logique n'est pas toujours de la partie, puis on essayera de comparer d'un point de vue théorique les performances des cartes d'après leur structure interne.
Le composant déterminant sur une carte graphique est le processeur graphique, GPU en anglais, auquel est associé de la mémoire pour le stockage des données.
Le GPU est composé de Processeurs de flux (Stream Processors, SP), faisant l'essentiel des calculs, d'unités de texturing (TU) , rajoutant les textures pour chaque pixel, et de ROP's (Raster Operators), traitement final sur les pixels, en charge en autres de l'anti aliasing (AA) .
Plus un GPU aura d'unités de calcul, Stream Processors surtout, mais aussi Unités de Texturing et ROP's, plus il sera puissant.

Deux fabricants se partagent le marché de la carte graphique séparée : ATI (racheté par AMD maintenant) et nVidia.
Dans la gamme grand public, les cartes nVidia sont toutes appelées GeForce, et les cartes ATI/AMD se nomment toutes Radeon et ce, depuis l'an 2000 environ.



Sommaire :

Comment identifier les performances d'une carte graphique ATI/AMD par sa référence


On peut dire que chez AMD les appellations suivent à peu près un ordre logique :

Séries 3000, 4000, 5000 et 6000 :
  • Le chiffre des milliers caractérise la famille du GPU : plus il est élevé, plus la carte est récente ; par exemple, la série 6000 est plus récente que la série 5000.
  • Une 4850 est nettement plus puissante qu'une 4650 : le chiffre plus élevé des centaines indique un GPU supérieur ;
  • Une 4850 est un peu moins puissante qu'une 4870 : ici, seul le chiffre des dizaines a changé : il s'agit du même GPU, avec un peu moins d'unités de calcul pour la HD 4850.


On peut comparer des cartes de générations différentes, mais pas des cartes dont la référence est complètement différente : une 4850 est moins puissante qu'une 5850 (un seul chiffre d'écart), mais on ne peut rien dire a priori sur les performances comparées d'une 4850 et d'une 5770 :
la 5770 est plus récente (chiffre des milliers = 5> 4), mais le chiffre des centaines est inférieur (7 < 8) : il faut aller regarder la structure de leur GPU pour pouvoir en dire plus.
Il y a malheureusement des cas où cette logique de numérotation n'est pas respectée, comme nous verrons plus loin avec les HD 6800.

Comment identifier les performances d'une carte graphique nVidia par sa référence


Chez nVidia, la numérotation suit aussi un ordre à peu près logique :

GeForce GT/GTS/GTX séries 100 à 500 :
  • le chiffre des centaines caractérise la famille du GPU, donc à peu près l'année de sortie. Par exemple, une GT 250 est plus ancienne qu'une GT 450 . Le préfixe GT/ GTS / GTX indique simplement une carte de plus en plus puissante, c'est redondant avec la numérotation. Les cartes à partir de la série 400 sont compatibles DX11, la moins puissante étant la GT 430 et la plus puissante la GT 580.
  • le chiffre des dizaines qui augmente correspond à un GPU plus puissant, mais basé en principe sur la meme architecture : par exemple, la GTX 480 est plus puissante que la GTX 470, basée sur le meme GPU, avec des unités de traitement désactivées. Mais il y a des exceptions : la GTX 460 n'est pas une GTX 470 avec des unités désactivées, ou moins nombreuses .

Chez Nvidia, les Processeurs de Flux (Stream Processors, SP) sont aussi appelés unités de traitement ou CUDA cores.

Pour les séries GT 200, 400 et 500, la puissance de la carte graphique correspond à la règle de numérotation.
Par contre, entre série GT 100 et GT 200, impossible de s'y retrouver : il faut aller voir la structure interne du processeur graphique (GPU).
On obtient ce tableau comparatif Séries 100/200 et GeForce 9000:
Série 100 :
G 100* : 8 SP, inférieure à la 9400 GT
GT 120* : 32 SP, équivalente à la 9500 GT
GT 130* : 48 SP, intermédiaire entre 9500 GT et 9600 GT
GTS 150* : 128 SP, voisine de la 9800 GTX+
Série 200 :
G 210 : 16 SP, équivalente à la 9400 GT
GT 220 : 48 SP, intermédiaire entre 9500 GT et 9600 GT
GT 230* : 64 SP, voisine de la 9600 GT
GT 240 : 96 SP, équivalente à la 9600 GSO (9600 GT boostée)
GTS 240* : 112 SP, équivalente à une 9800 GT surcadencée
GTS 250 : 128 SP, équivalente à la 9800 GTX+

(*)Ces cartes sont fournies dans des PC de marque, et non disponibles à la vente au détail
Ces informations viennent de cette news, de cet article comparatif nVidia, et surtout du site nVidia.

Comparaison théorique des cartes ATI/AMD entre elles et nVidia entre elles


Pour avoir une idée plus précise des performances théoriques de carte d'un même fabricant entre elles, il faut regarder la structure du GPU.
Ensuite, on peut comparer les fréquences de fonctionnement du GPU et de la mémoire, mais ca n'a de sens que pour des modèles très voisins.
En effet, comparer la fréquence GPU d'une HD 5850 (725MHz) avec une HD 5870 (850Mhz) a un sens , car les 2 cartes sont basées sur le meme GPU, avec un nombre différents de processeurs de flux, mais ca n'a aucun sens entre une HD 5850 et une HD6950 (800MHz), car la structure du GPU est nettement différente.

Chez AMD:

Comme évoqué plus haut, la logique n'a pas fonctionné chez AMD pour les HD 6800 :
Par exemple, entre la HD 5850 et la HD 6850, la comparaison des chiffres des milliers indique que la HD 6850 est plus récente, et c'est vrai.
Mais la logique s'arrete là :
le chiffre des centaines identique devrait signifier que la HD 6850 est supérieure à la HD 5850, or il n'en est rien.
Il faut regarder les unités internes du GPU pour comprendre :
HD 5850 : processeurs de flux : 288 vec5, souvent comptabilisés 1440 (288x5), 72 unités de texturing et 32 unités Raster (ROP's).
HD 6850 : processeurs de flux : 192 vec5 comptés 960 (192x5), 48 unités de texturing et 32 unités Raster (ROP's).

Ici, on constate facilement une quantité plus importante de processeurs de flux et d'unités de texturing sur la HD 5850.
L'optimisation du traitement de la tesselation et les fréquences plus élevées sur la HD 6850 permettent de réduire l'écart, mais les faits sont là :
la HD 5850 est plus puissante que la HD 6850 dans les tests réels sur jeux, alors que ca devrait etre l'inverse, d'après la numérotation !
On obtient la meme chose avec les HD 5870 et HD 6870, c'est la première qui est la plus puissante, contrairement à ce que la numérotation laisse penser.

Pour la dernière génération de cartes graphiques AMD, les HD 79XX, l'architecture "Graphics Core Next" est encore différente :
Depuis la série 5000 des Radeon HD, AMD propose un modèle d'architecture basé sur le VLIW ou Very Large Instruction Word. En clair, il s'agit pour les unités de la puce d'exécuter d'un seul coup plusieurs instructions simultanément (selon le codage) : C'est ce que l'on peut qualifier de comportement vectoriel.
Avec Graphics Core Next, la firme tire un trait sur cette époque et propose une architecture comprenant une unité vectorielle + co-processeur scalaire, associé à un ordonnanceur /planificateur de l'exécution de taches:
Il s'agit ici de travailler sur une seule instruction par bloc, toujours sur plusieurs éléments à la fois. On a donc un découpage de la puce où les unités de calcul, autrement appelées CU ou Compute Unit, sont constituées de blocs SIMD (quatre par CU), chacun pouvant exécuter une instruction sur un maximum de 16 éléments.

Chez nVidia :

Chez Nvidia, la logique de numérotation correspond bien à la réalité mesurée ; mais certaines appellations sont trompeuses.
Par exemple si on compare une GT 460 768Mo avec une GT 460 1Go :
on pense qu'il s'agit du meme modèle de carte graphique, avec simplement la quantité de mémoire qui est moins importante sur la version 768Mo.
Mais en regardant la structure de leur GPU, on trouve d'autres différences :
Les 2 GPU ont chacun 336 processeurs de flux et 56 unités de texturing, mais la version 1Go possède 32 unités ROP's, contre 24 pour la version 768Mo, et la largeur de bus est plus grande (256 bits contre 192) sur la version 1Go :
- les ROP's intervenant pour les filtrages, la version 1Go est plus adaptée pour ceux qui jouent avec A-A (Anti Aliasing).
- la largeur de bus intervenant dans la vitesse des échanges entre GPU et mémoire, la version 1Go sera un peu plus rapide que la version 768Mo.
Ce sont en fait ces 2 caractéristiques "cachées" qui font la différence de performances entre les 2 cartes, et non la différence de mémoire, qui est somme toute assez faible.

L'intérêt d'analyser la structure interne permet de voir comment est construit le GPU, mais ne permet pas de tout voir :
l'exemple du meilleur traitement de la tesselation sur la série HD 6800 n'apparait pas dans la structure interne du GPU ; de meme, la capacité de traitement GPGPU des HD 5800 (absente sur les HD 6800) n'apparait pas non plus : il faudra donc se fier aux informations commerciales ou aux tests indépendants.

Comparaison théorique des cartes ATI/AMD et Nvidia entre elles


Pour comparer les performances d'une carte graphique Nvidia et d'une carte AMD, c'est beaucoup plus compliqué :
On peut essayer comme précédemment de comparer le nombre de processeurs de flux, d'unités de texturing et de ROP's, mais l'architecture assez différente des GPU chez Nvidia et AMD , notamment concernant les processeurs de flux, oblige à rentrer un peu plus dans le détail, et on tombe rapidement sur une impasse.

En effet, depuis les 8800 première version, NVIDIA propose une architecture qu'il qualifie de SIMT c'est-à-dire « Single Instruction, Multiple Threads » et qui correspond dans la pratique à l'application d'une opération sur plusieurs threads (fils d'exécution) par opposition à l'architecture retenue par ATI qui est dite SIMD «Single Instruction, Multiple Data », où une instruction de plusieurs opérations est appliquée à un élément.
Techniquement, qu'il s'agisse d'architecture SIMT ou SIMD, les puces sont dans tous les cas dotées d'unités scalaires. En théorie, le SIMT est censé être plus efficace, le programmeur n'ayant pas à se soucier du remplissage de l'unité vectorielle, ce qui n'est pas le cas du SIMD.

Bien que les puces d'AMD et de NVIDIA proposent toutes deux des architectures graphiques unifiées, l'architecture SIMT ou SIMD induit une comptabilisation différente des processeurs de flux, car chez AMD chaque processeur de flux peut contenir jusqu'à 5 instructions (4 sur les HD 69XX).
Et donc la simple comparaison brute du nombre d'unités ne permet pas d'estimer la puissance d'une puce face à l'autre.
Toute la difficulté consiste à savoir combien d'unités de traitement vectoriel sont utilisés simultanément , car ca va dépendre des instructions, et donc du codage des jeux.
Avec la dernière architecture d'AMD, le Graphic Core Next, c'est aussi compliqué, car malgré une apparence scalaire du point de vue développeur, il y a toujours des unités vectorielles.

C'est donc pratiquement mission impossible de comparer une carte AMD et une carte Nvidia sans benchs à l'appui.

Essayons quand meme de comparer d'après la structure du GPU la GTX 580 et la HD 7950, qui d'après les benchs en jeux donnent des performances voisines.
La GTX 580 est composée de :
4 GPC ou Graphics Processing Cluster. Chacun de ses clusters dispose à son tour de 4 SM (Streaming Multiprocessor en anglais). Chaque SM renferme 32 noyaux d'exécution CUDA, ce qui donne au total 512 Processeurs de Flux, éléments travaillant simultanément .
L'analyse de la HD 7950 donne :
28 CU ou Compute Unit, chacun doté de 4 SIMD, chacun pouvant travailler sur 16 éléments, ce qui nous font 1 792 processeurs de flux.

Comment expliquer une telle différence sur les processeurs de flux, alors que les résultats sur jeux sont voisins ?
A mon avis, cela vient du fait que les Processeurs de Flux ne travaillent pas tous simultanément chez AMD, lié à la présence d'unités vectorielles.
Comme la GTX 580 avec 512 Stream Processors (SP) donne des résultats voisins en jeux, on peut en conclure provisoirement que la HD 7950 ne fait travailler simultanément que 500 à 600 SP , soit un rendement de 3 à 4 fois inférieur au GPU de Nvidia ?

Conclusion


En résumé, l'analyse de la structure du GPU permet d'aller plus loin dans la prévision des performances des cartes, avec une moindre précision que des tests pratiques, qui restent dans tous les cas la référence.
Si cette méthode donne de bons résultats au sein d'une meme marque, elle trouve ses limites en comparant les cartes graphiques des 2 principaux constructeurs :
la structure assez différente de leurs GPU rend très difficile, voire impossible, la comparaison purement théorique des unités de calcul.
Publié par marcmarais - Dernière mise à jour le 1 février 2012 à 19:00 par marcmarais
Ce document intitulé « Choisir sa carte graphique en fonction de sa référence » issu de CommentCaMarche (www.commentcamarche.net) est mis à disposition sous les termes de la licence Creative Commons. Vous pouvez copier, modifier des copies de cette page, dans les conditions fixées par la licence, tant que cette note apparaît clairement.
Dossier à la une
5 extensions si vous voulez revenir à l'ancien Facebook
CPU Limited : Principe
Identifier la version de Pixel Shader de sa carte graphique