AMD Radeon HD 4870 & 4850

Publié le 25/06/2008 par
Imprimer


Performances accès aux textures
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. Ces tests ont été réalisés avec un outil fourni par nos confrères et amis de Beyond 3D .


Vous remarquerez la différence évidente entre la GeForce 8800 Ultra et la GeForce 9800 GTX capable de filtrer les textures 32 bits 2x plus rapidement grâce à la présence de plus d'unités d'adressage. La GeForce GTX 280 est nettement devant la GeForce 9800 GTX alors qui si nous regardons les débits théoriques, ils sont très proches avec respectivement 43.2 GTexels/s et 48.2 GTexels/s. Autrement dit, Nvidia a bel et bien amélioré le rendement de ses unités de texturing puisque nous passons d'un rendement de 78% à 98%. Pas mal.

Du côté de la Radeon HD 4870, plusieurs choses sont à noter. Premièrement alors que son débit maximal est de 30 GTexels, nous n'en obtenons que 24. La raison est que le RV770 ne dispose que de 32 interpolateurs qui ne peuvent donc pas alimenter les 40 unités de texturing quand celles-ci se basent sur des adresses interpolées.

Ensuite, si le filtrage des textures RGB9E5 reste effectué à pleine vitesse, celui des textures FP16 (HDR 64 bits) voit, lui, son débit divisé par 2 et cette fois nous pouvons mesurer le débit maximal. S'il reste supérieur à celui de la Radeon HD 3870, il faut garder en tête que celle-ci ne dispose que de 16 unités de texturing, contre 40 pour la Radeon HD 4870.

Compte tenu du nombre d'unités de texturing et du nombre d'interpolateurs, nous obtenons 100% des débits théoriques, ce qui est surprenant et démontre de l'effort apporté au rendement de ces unités.


Performances des ROPs
Le GeForce GTX 280 dispose de 32 ROPs, contre 24 pour le GeForce 8800 Ultra et 16 pour les GeForce 9800 GTX et les Radeon HD 3870 et 4870. Pour rappel les ROPs sont les unités chargées des derniers traitements à effectuer sur les pixels (mélange des couleurs, antialiasing, compression des données et écriture de celles-ci en mémoire). La taille du bus mémoire est en partie liée au nombre de ROPs.

Pour rappel, non content d'en avoir augmenté le nombre, Nvidia en a amélioré l'efficacité sur GeForce 8 lors des passes qui n'écrivent que la valeur Z en mémoire. Sans antialiasing, AMD est très loin en terme de débit à ce niveau :


Les GeForce sont ici très véloces, mais avec la Radeon HD 4870, AMD a doublé les débits dès que l'antialiasing est activé. Si les GeForce voient leurs performances plonger avec l'antialiasing 8x, ce n'est pas le cas des Radeon.

Nous avons ensuite, ici aussi à l'aide d'un outil fourni par nos confrères de Beyond 3D , testé le débit des ROPs quand ils écrivent des pixels en mémoire, d'une manière classique tout d'abord et ensuite avec mélange des couleurs (blending), notamment utilisé pour les effets de transparence.


Sur GeForce et sur la Radeon HD 3870, les résultats sont logiques et collent au nombre de ROPs. Le 64 bits est 2x plus lent que le 32 bits et le 128 bits encore 2x plus lent. Quant au 32 bits "FP10", il est géré de la même manière que le FP16 et donc ne profite malheureusement pas d'un débit plus élevé, ce qui n'est pas le cas sur la Radeon HD 4870, qui peut le traiter plus rapidement, ce qui est une bonne nouvelle.

Par contre étrangement, alors que le FP32 semble être 2x plus rapide, le FP16 est un petit peu plus lent. Il s'agit probablement d'un problème d'une erreur liée aux drivers.


Une fois le blending utilisé, nous pouvons constater un net gain pour la GeForce GTX 280 qui profite d'une implémentation à pleine vitesse de cette fonction, contrairement à la GeForce 9800 GTX.

Avec le Radeon HD 4800, il semblerait qu'AMD ait modifié les capacités de blending de ses ROPs. Ainsi, si le Radeon HD 3800 est capable de 8 blending FP16 par cycle et de 2 blending FP32, la Radeon HD 4800 n'est capable que de 4 blending FP16 par cycle mais de 4 blending FP32 également. AMD aurait donc placé une unité de blending FP32 (et donc capable de blending en FP16 aussi) par bloc de 4 ROPs au lieu de 2 unités FP16 utilisées pour gérer (lentement) le FP32.
Vos réactions

Top articles