AMD Radeon HD 5870 et 5850

Publié le 23/09/2009 par
Envoyer Imprimer
Nouvelle architecture oblige, nous avons exécuté quelques tests théoriques.


Débit de triangles
Etant donné la confusion au niveau du double rasterizer, nous avons vérifié le débit en termes de triangles par secondes :


La Radeon HD 5870 se comporte donc comme les autres cartes puisqu’elle ne dispose que d’un setup engine. Par contre elle arrive plus facilement à s’approcher des maximums théoriques.


Performances texturing
Nous avons mesuré les performances lors de l’accès à des textures de différents formats en filtrage bilinéaire. Nous avons conservé les résultats en 32 bits classique (8x INT8), en 64 bits "HDR" (4x FP16) et en 128 bits (4x FP32). Nous avons ajouté pour information les performances en 32 bits RGB9E5, un nouveau format HDR introduit par DirectX 10 qui permet de stocker des textures HDR en 32 bits avec quelques compromis.


La Radeon HD 5870 se montre ici plus efficace que la Radeon HD 4890 qui était limitée par ses 32 interpolateurs et donc à 27.2 GTexels/s alors que ses unités de texturing sont capables de 34 GTexels/s. Cette limite disparait avec la Radeon HD 5870 puisqu’il n’utilise plus de tels interpolateurs fixes et charge le shader core de cette tâche qui en contrepartie occupe une petite partie de la puissance de calcul.

Vous remarquerez que la GeForce GTX 285 n’est pas capable de traiter les textures RGB9E5 à pleine vitesse, contrairement aux Radeon.


Performances ROPs
Tout d’abord, nous avons mesuré les performances en débit de données Z :


La Radeon HD 5870 double ici le débit de la Radeon HD 4890.

Nous avons ensuite mesuré le fillrate sans et puis avec blending, et ce avec différents formats de données :


Si la Radeon HD 5870 double les débits par rapport à la Radeon HD 4890 en 32 bits, elle est limitée par sa bande passante mémoire en 64 et 128 bits. Vous remarquerez que contrairement aux GeForce GTX 285 et Radeon HD 4890, elle est capable de traiter le format HDR économe à base de FP10 à pleine vitesse.


Nous retrouvons un comportement similaire avec blending, si ce n’est que la bande passante mémoire devient une limite encore plus importante.


Performances branchements
Les GPUs exécutent leurs instructions sur des groupes de threads, de 32 dans le cas des GeForce et de 64 dans celui des Radeon, ce qui est un problème pour les branchements. S’il y a une divergence au niveau de la branche empruntée parmi les threads d’un groupe, les deux branches doivent être calculées successivement, avec un masque pour appliquer le résultat uniquement aux threads qui les empruntent.

Pour mesurer les performances à ce niveau, nous avons développé un petit test qui nous permet de modifier la granularité du branchement, c'est-à-dire le nombre moyen, dans notre exemple, de pixels consécutifs qui vont prendre une même branche. Nous spécifions la branche à prendre par colonne virtuelle de pixels, une colonne sur 2 doit afficher un shader complexe et l'autre peut passer cette partie du rendu. Des triangles de taille moyenne en mouvement sont affichés à l'écran et traversent ces colonnes qui utilisent différentes branches, ce qui implique que tant les triangles et leur position que la taille de la colonne influent sur l'efficacité du branchement ce qui est proche d'une situation réelle.


Avec des colonnes étroites, les GPUs ne peuvent pas profiter du branchement pour éviter la partie complexe sur la moitié des pixels, mais par contre doivent traiter les instructions de branchement. Heureusement, tous ces GPUs disposent d'une unité dédiée aux branchements qui travaille en parallèle et masque le coût de ces instructions. Les Radeon semblent cependant les seules à masquer complètement la latence des branchements.

La Radeon HD 5870 gagne ici en efficacité et monte plus rapidement à un rendement élevé que la Radeon HD 4890. Le rendement supérieur n’est par contre pas lié aux branchements, mais à la partie simple du shader qui est traitée plus efficacement sur la Radeon HD 5870, probablement par les petites améliorations apportées aux unités de calcul. La GeForce GTX 285 reste plus efficace encore grâce à son travail sur des groupes plus petits.
Vos réactions

Top articles