AMD Radeon HD 3870 et 3850

Publié le 15/11/2007 par
Imprimer
Crysis - démo SP

Bien qu'il ne soit pas dans notre habitude d'utiliser des démos dans notre suite de test, il est difficile de faire l'impasse sur Crysis tant ce jeu est attendu et redéfinit la qualité graphique moderne. Nous exécutons le test interne en mode DirectX 9 High (forcé via l'ajoute de –dx9 derrière l'exécutable) et en mode DirectX 10 Very High.

Notez qu'une polémique a fait surface au sujet d'un bug dans les pilotes Nvidia 169.04 dont la conséquence était que la réflexion à la surface de l'eau se trouvait déforméé puisqu'elle n'était pas actualisée assez souvent. Etant calculée moins souvent, les performances augmentaient, tout du moins dans certains conditions telles que le 1920X1200 avec AA4x en mode DirectX 10 (+30%). Nous pensions au départ qu'il s'agissait d'un bug du jeu. Mais il s'est avéré que renommer l'exécutable de manière à ce que le pilote Nvidia ne puisse plus le détecter corrigeait le problème. De quoi avoir quelques soupçons sur ce bug.

Nous avons contacté Nvidia à ce sujet qui a confirmé le bug et le gain de performances qu'il pouvait entraîner. Nvidia nous a fourni un driver qui ne pose plus ce problème (169.05), que nous avons bien entendu utilisé ici. Le fabricant a également détaillé le bug en question de manière à éviter tout mal entendu à son sujet.

Le moteur de Crysis essaye d'éviter de recalculer la réflexion sur l'eau autant que possible, ce qui est une optimisation logique. Pour ce faire, il utilise 3 données : le temps écoulé depuis la précédente actualisation, le mouvement de la caméra, et le nombre de pixels "eau" visibles à l'écran. Il serait bien entendu ridicule de recalculer toute une réflexion pour une poignée de pixels. C'est d'ailleurs cette dernière valeur qui est la source du problème.

Pour connaître le nombre de pixels "eau" visibles, le moteur effectue un test d'occlusion sur le GPU, retourne le résultat au système qui l'utilise pour déterminer si la réflexion doit être mise à jour ou pas. Pour éviter de perdre du temps (CPU qui attend le résultat du GPU), pour une image donnée, le moteur se base sur le résultat du test d'occlusion d'une image précédente, une image de décalage par exemple. Or en SLI cela pose problème puisque une image de décalage signifie que le GPU2 va alors devoir attendre que le GPU1 ait effectué le test d'occlusion. Le SLI ne peut donc pas apporter le moindre gain. La démo et probablement le jeu devront être mis à jour pour prendre en compte les systèmes multi-GPUs en synchronisant l'utilisation des tests d'occlusions de manière à éviter de bloquer une partie du système.

En attendant, et pour que le SLI montre des gains (tout en causant potentiellement des bugs), Nvidia a en quelque sorte faussé le test d'occlusion en reportant directement toujours la même chose au moteur : l'eau est visible mais sur très peu de pixels. Dans le cas où en réalité le test aurait détecté que l'eau n'est pas visible, les GeForce 8 traitent l'eau pour rien (mais sans actualiser la réflexion bien entendu). Dans le cas où le test aurait détecté que l'eau est visible en masse et donc que la réflexion doit être actualisée, les GeForce 8 reportent toujours que l'eau n'est que très peu visible et le bug apparaît. Au final, l'eau représentant souvent une partie importante de l'écran dans le test de la démo, les GeForce 8 sont avantagées par ce bug.

Mais en quoi une optimisation pour le SLI est elle liée au problème en question ? Indirectement puisqu'un bug cette fois dans le driver lui faisait appliquer le profil SLI même avec un seul GPU. C'est ce que Nvidia a corrigé avec les pilotes 169.05. Le problème reste donc d'actualité en SLI et le restera jusqu'à ce que le jeu soit mis à jour pour permettre au SLI de fonctionner.

Ceci étant dit, nous pouvons passer aux résultats.


La GeForce 8800 GT est proche de la GTX et tout juste devant les Radeon HD 2900 XT et HD 3870. La HD 3850 est pour sa part au même niveau que la GeForce 8800 GTS. Notez que seules les GeForce 8800 GT/GTX/Ultra permettent de jouer en mode High et en 1280x1024, et encore c'est tout juste. Le jeu est très gourmand à tous les niveaux, y compris sur la mémoire puisque les 320 Mo de la GeForce 8800 GTS 320 sont déjà insuffisants.


Avec antialiasing, de nombreuses cartes commencent déjà à voir rouge. Si les GeForce 8800 GTX et Ultra s'en tirent assez bien, la GT s'écroule en 1920x1200. Quant aux Radeon HD 2900 XT et HD 3800, elles voient leurs performances divisées par 2 !


Tous détails poussés à fond et en DirectX 10, la GeForce 8800 GT a du mal à se démarquer de la 8800 GTS 640 Mo en 1920x1200 mais reste devant les Radeon HD 2900 XT et HD 3870 qui sont au niveau de la 8800 GTS.


Jouer tout à fond en 1280x1024 avec la plus grosse carte haut de gamme du moment ? Impossible. Toutes les cartes sont à genoux. Vivement le SLI de GeForce 9800 !
Vos réactions

Top articles