DirectX 12 : 8 cartes graphiques comparées sur Ashes of the Singularity Beta 2

Introduction et système de test

Nous avons déjà eu l'occasion de parler en détail des améliorations impressionnantes de DirectX 12 pour l'exploitation de toute la puissance des GPU actuels et futurs. La nouvelle API de Microsoft permet aux développeurs de se rapprocher au maximum du GPU pour profiter de tout leur potentiel. La première API du genre était Mantle, signée AMD, et le concurrent principal de DirectX, OpenGL, vient aussi de finaliser sa nouvelle API similaire : Vulkan. Sans oublier l'API Metal d'Apple, conçue pour assurer les mêmes bénéfices.

Nous avions aussi pu essayer la première version de Ashes of the Singularity lors de notre test de la Radeon R9 Nano, en constatant d'énormes bénéfices en termes de performances. La beta 2 nous permet d'aller plus loin dans nos tests, notamment grâce à de meilleurs pilotes graphiques, en comparant quatre des meilleurs GPU d'AMD, face à quatre mastodontes de NVIDIA.

Le jeu de stratégie en temps réel Ashes of the Singularity est intéressant car il est très poussé graphiquement, et demande aussi beaucoup de ressources pour assurer l'intelligence artificielle des unités en jeu. Il a de quoi vraiment exploiter la parallélisation des calculs et les optimisations CPU et GPU qu'apportent DirectX 12. Pour rappel, DirectX 12 permet d'exécuter simultanément plusieurs tâches qui étaient auparavant alignées l'une derrière l'autre dans une file d'attente commune. Le gain potentiel de performances est immense... En théorie. En pratique, il faudra voir comment les développeurs soignent leurs optimisations.

Côté GPU, il semble qu'AMD ait pris de l'avance dans la mise en place de ces calculs asynchrones depuis plusieurs génération de GPU (Tonga, Fidji et Haiwai). Les puces graphiques d'AMD semblent mieux préparées que celles de Nvidia (Kepler, Maxwell). Les tests qui suivent vont tirer ça au clair, sous DirectX 12.

Configuration de test :

Caractéristiques
Configuration
Intel Core i7-5930K @4,2 GHz
Watercooling Alphacool (Bloc Nexxxos, Pompe VPP655, Radiateur 240 mm)
RAM Crucial Ballistix Sport, 4 x 4 Go DDR4-2400
MSI X99S XPower AC
1x Crucial MX200, 500-Go-SSD (Système)
1x Corsair Force LS 960-Go-SSD (Applis, données)
Alimentation Be Quiet Dark Power Pro, 850W
Windows 10 Pro (à jour)
Pilotes
AMD: Radeon Software 15.301 B35 (beta presse, février 2016)
Nvidia: 361.91 WHQL
Jeu de testAshes of the Singularity Beta 2

Nous avons recueilli nos résultats avec un logiciel de journalisation stockant toutes les données utiles afin de mieux comparer les performances de chaque carte et comprendre le comportement de toute la machine, sans se limiter au simple nombre d'images par seconde.

Images par seconde, temps de rendu et fluidité

Images par seconde

Le test classique consistant à calculer le nombre d'images par seconde moyen et minimum n'est pas inintéressant. Nous l'avons effectué dans trois définitions différentes (Full HD, WDHD et UHD).

Les cartes sont au coude à coude, mais ces chiffres moyens sont parfois trompeurs face à l'impression subjective de fluidité que l'on peut avoir devant l'écran. Nous le verrons par la suite. Le graphique suivant permet de détailler les comportements de chaque carte graphique dans le temps au cours du test, en fonction des différentes charges qui leur sont appliquées (toujours en images par seconde).

Temps de rendu d'image

Ce test colle beaucoup plus à l'impression de fluidité subjective que l’œil humain perçoit face à l'écran. Il consiste à mesurer le temps de rendu de chaque image affichée à l'écran. Ce graphique permet de mieux comprendre l'origine des micro-saccades que l'on ressent visuellement par rapport au nombre brut d'images par seconde des premiers tests.

Les graphiques étant assez chargés, cette image permet de bien se rendre compte du temps de rendu d'image entre une GTX 980 Ti 6G et une R9 Fury X en définition WQHD. La carte d'AMD offre un rendu plus constant et donc subjectivement plus fluide.

Fluidité réelle

Cet autre graphique permet de mettre en évidence les variations du temps de rendu de chaque image, pour encore mieux se rendre compte de la fluidité réelle qu'apporte chaque carte graphique dans la même situation de test.

Là encore, ce graphique isolant deux cartes dans la même définition montre que le rendu de la R9 Fury X est beaucoup plus constant, et donc nettement plus fluide à l’œil nu.

Conclusion provisoire

Dans les scènes les plus lourdes, notamment lorsque l'intelligence artificielle nécessite beaucoup de ressources, les cartes AMD semblent globalement plus à l'aise dans le rendu des scènes de jeu. Il est toutefois important de rappeler que cet unique test ne nous permet pas de tirer des conclusions plus générales quant au comportement des différentes cartes graphiques en présence dans d'autres jeux et d'autres configurations PC.

Limitations du temps de rendu

Limitations et pertes de temps

Ces deux illustrations montrent la répartition très inégales des différentes étapes de la chaîne de rendu d'image sous DirectX 11 au niveau du processeur central. La parallélisation est largement plus efficace avec DirectX 12, qui répartit beaucoup mieux les étapes de rendu sur les différents cœurs disponibles. Le temps d'affichage total de chaque image diminue alors considérablement.

Nombre d'appels GPU par image

Premier constat : tous les GPU comparés sont sollicités de manière presque identique par le processeur et les pilotes.

Taux d'occupation CPU

Voici maintenant le taux de charge du processeur pour chaque carte graphique. Plus la carte est puissante et débite d'images par seconde, plus le processeur est sollicité.

Bridage par le CPU

C'est ici que les choses se compliquent : lorsque le processeur est engorgé et qu'il ne parvient pas à paralléliser suffisamment ses calculs pour fournir à temps les informations nécessaires à la carte graphique. Lorsque la limite de la capacité de traitement du processeur est atteinte (ici par un manque de parallélisation puisque le taux d'occupation total du CPU ne dépasse jamais les 100 % dans le précédent test), le GPU doit attendre le CPU pour afficher les images suivantes.

C'est ici que les quatre cartes Nvidia de notre comparatif semblent en difficultés face aux quatre cartes AMD. Ces dernières n'attendent presque jamais le CPU et tirent donc mieux partie de toute leur puissance.

Temps consommé par le pilote graphique

Le pilote graphique est à l'origine d'une partie non négligeable du temps de rendu des images. Encore une fois, plus la carte est rapide et délivre d'images par seconde, plus le temps monopolisé par le pilote est conséquent. Ici, pas de différence significative entre cartes graphiques de même puissance.

Temps d'affichage

A la fin de la chaîne de traitement de d'image, le temps d'affichage de l'image dépend fortement de la charge du processeur précédent cette étape, mais aussi de la puissance brute du GPU. C'est pourquoi les résultats sont très différents en fonction des cartes et des définitions de test.

Conclusion provisoire

Encore une fois, il est trop tôt pour généraliser, mais AMD semble, dans ce test, largement en avance dans le domaine de parallélisation et des processus asynchrones afin que le processeur graphique n'ait pas à attendre le processeur central. La question de l'impact de cet avantage en pratique dans les futurs jeux DirectX 12 reste toutefois à déterminer.

Multi-GPU

SFR : la nouvelle méthode de rendu multi-GPU de DirectX 12

Le rendu d'image multi-GPU sous DirectX 11 consistait à faire calculer une image par une carte et la suivante par la seconde carte, l'une après l'autre. Cette méthode AFR (Alternating Frame Rendering) laisse désormais sa place au SFR (Split Frame Rendering) sous DirectX 12. Le SFR consiste à partager le calcul de la même image par les deux cartes graphiques en même temps.

Premier avantage : il n'y a plus besoin de distribuer les mêmes données en double, sur la mémoire de chaque carte graphique. D'autre part, les cartes n'ont plus à s'attendre entre elles pour calculer l'image suivante, ce qui va grandement améliorer la fluidité visuelle du rendu. Le SFR divise chaque image en plusieurs carrés attribués à chaque carte graphique, de manière similaire au rendu parallélisé du raytracing. Du coup, les deux cartes utilisent uniquement les ressources dont elles ont besoin en mémoire. Par ailleurs, ce système permet de mieux faire fonctionner ensemble des GPU de puissance différente.

Performances

La puissance de cartes en multi-GPU étant très élevée, elle entraîne une surcharge du CPU dans les conditions précédentes de test. Nous avons donc monté les détails du jeu au maximum, et effectué les tests en définition Ultra-HD pour ne pas être limité par le processeur.

Avec le graphique suivant, on peut constater que les différences sont grandes, notamment dans le nombre d'image minimum délivré par les différents couples de cartes graphiques en présence. Les valeurs moyennes d'images par seconde sont donc parfois assez trompeuses.

Les temps d'affichage des images sont cette fois assez similaires entre les cartes AMD et Nvidia en SLI et CrossFire.

Cette fois, les variations entre les temps d'affichage successifs des images sont très faibles, ce qui montre que tous les couples de cartes offrent une très bonne impression de fluidité. DirectX 12 devrait donc fait très plaisir aux possesseurs de cartes graphiques en SLI et CrossFire !

Le nombre d'instructions envoyées au GPU est toujours très similaire entre les différentes configurations.

En revanche, tous les couples de GPU sont bridés par le processeur central. Ce qui montre une certaine limite dans la parallélisation des tâches CPU avec un SLI ou un CrossFire très demandeur en ressources.

Le temps occupé par le pilote graphique adopte un comportement similaire en fonction des couples de cartes.

Le temps de présentation finale de l'image tourne encore une fois à l'avantage des carte R9 Fury X d'AMD, leur apportant un léger avantage en termes de perception visuelle de la fluidité des scènes affichées.

Conclusion

Beaucoup de problèmes à gérer

Nous tenons tout d'abord à préciser que ces tests ont fait suer nos testeurs, surtout pour la partie multi-GPU, à cause de nombreux problèmes, notamment dus au fait que le jeu Ashes of the Singularity ne s'exécute pas en mode plein écran exclusif, mais dans une fenêtre sans cadre en premier plan. Ce détail rend le benchmark très sensible à de nombreux paramètres, notamment en mode Ultra-HD. Plusieurs mises à jour de Windows 10 furent nécessaires pour régler de nombreux problèmes causés par la jeunesse du système d'exploitation.

Conclusion

Si AMD semble avoir une bonne avance avec ses puces actuelles pour exploiter les avantages de DirectX 12, il reste une question d'importance : où sont les jeux pour en profiter ? Il ne faut pas non plus être trop en avance sur son temps. La révolution DirectX 12 ne profitera sûrement qu'aux nouvelles générations de carte graphiques, lorsque des architectures comme Fidji ou Maxwell appartiendront déjà à l'histoire récente des cartes graphiques.

On pense donc évidemment aux futures cartes graphiques basées sur les architectures Pascal de Nvidia et Polaris d'AMD. Elles devront, pour le coup, être prêtes à profiter au maximum de tous les avantages apportés par DirectX 12. L'année 2016 sera très certainement l'une des plus intéressantes de l'histoire de la course entre AMD et NVIDIA.

Posez une question dans la catégorie Les news : vos réactions du forum
Cette page n'accepte plus de commentaires
5 commentaires
    Votre commentaire
  • Je comprend l’intérêt journalistique de comparer ..."quatre des meilleurs GPU d'AMD, face à quatre mastodontes de NVIDIA.", mais ces cartes sont peu répandues et inaccessibles à l'immense majorité des joueurs.

    Il aurait été certes moins sexy de mettre en test des cartes plus utilisées par les joueurs et de ne pas faire un test du Multi GPU, mais, franchement j'aurais préféré voir un test R9-370 vs GTX 960 ou un test des APU AMD vs IGPU Intel
    0
  • @Old_Bear, Je suis pas tout a fait d'accord. Autant il est clair qu'il existe très peu de gens disposant d'un multi-GPU de cartes aussi puissantes, autant il y a pas mal de gamers (enfin on parle de ceux qui rentabilisent en jouant 5-10/j) qui cherchent a jouer sur les derniers matos! J'y connais pas gran chose a AMD mais un grand nombre de gamers avec lesquels je jouent sont entre la GTX 980TI et la GTX 960.

    L'interet de la seconde partie du test, c'est simplement pour te dire: qu'est ce que ca donne si on a le meilleur materiel dispo sur le marché. C'est sur que les testeurs ont tous des procos OC, des ecrans 144Hz, les dernieres cartes mères... C'est pour le kiff! ;)

    J'ai fait la betise d'achter une TI 6 mois avant la sortie des prochaines generation, mais c'est clair que j'attend la pascal avec impatience!! :D
    0
  • Perso, je suis un joueur 24/24-7/7, donc je ne vais pas faire de mon cas particulier une généralité.Depuis l'an dernier j'ai acheté une GTX 770 et une GTX 970.
    J'ai même donné ma GTX 970 pour faire de la place pour une future GTX "Pascal" ... et parce qu'elle faisait trop de bruit!

    Mais je discute pas mal sur des forums et IRL avec des joueurs qui essaie de jouer avec des config de misère ... et si tu regardes bien sur Steam par exemple tu peux voir qu'il y a plus de joueurs avec une GTS 450 que de joueurs avec une GTX 980 Ti.
    0
  • @old_bear : Si je suis d'accord avec toi, il faut aussi reconnaitre que les améliorations apportées par DX12 ne seront vraiment sensibles que sur des cartes très puissantes avec des options graphiques poussées à fond. Gagner 20% de perfs sur une carte qui affiche 10 img/s autant dire quasiment rien.
    0
  • Je manque un peu de compétence technique, mais ce que je crois avoir compris c'est que DX 12 impacte en premier lieu le processeur,l'API de bas niveau -sur le modèle de Mantle d'AMD- permettant de répartir les tâches de rendu sur plusieurs threads en limitant de façon importante les temps d'attente.
    L'impact de DX12 sur la carte graphique est probablement plus subtil et va dépendre de la façon dont la programmation du jeu tient compte ou non de la présence de DX12.
    Donc de mon point de vue, ce qui serait intéressant pour un joueur "moyen", ce serait d'avoir à partir de ce jeu programmé à la base avec DX12 une comparaison entre les performances en combinant GTX 960/R9 370 et
    - dual core sans multithread
    - dual core avec multithread et APU
    Pour les gains de perfs à ce niveau on en saura strictement rien tant que les personnes qui en ont les moyens ne feront pas des tests ayant une signification IRL.
    0