DirectX, quésaco ?


Microsoft-DirectX-logo DirectX, c'est un ensemble de fonctions graphiques et sonores, communément appelé API qui permet d'accélérer des applications (ici, ce qui nous intéresse est particulièrement le domaine du jeu vidéo). Le tout se compose de plusieurs modules (DirectX Draw pour l'affichage 2D, Directx Sound pour le son, DirectX 3D pour les effets 3D).

En fonction de l'API appelé par un jeu pour s'exécuter, il accède à certaines fonctions, certains réglages et permet de déverrouiller des effets indisponibles sur une version antérieure de DirectX. Dans le cadre de DirectX 12, les avancées sont intéressantes tant au niveau des nouveaux effets spéciaux que surtout dans la gestion des calculs permettant de gagner en performances de façon significative y compris avec des jeux non optimisés DirectX 12 !

La fin du bridage CPU

Outre le fait que DirectX 12 est une exclusivité liée à Windows 10 (il faudra basculer obligatoirement vers Windows 10 pour en profiter), l'API a fait un bond de géant en avant dans cette nouvelle version, et cela commence par la gestion du multithreading.

DirectX Jusqu'à DirectX 9, l'API de Microsoft n'était pas conçu pour tirer profit des processeurs multicoeurs. De ce fait, la façon dont le CPU et le GPU interagissaient était largement limitée. La majeure partie des utilisateurs ne disposait que d'un processeur monocoeur, donc rien ne choquait. Mais depuis, nous sommes entrés dans une nouvelle ère matérielle avec des processeurs affichant toujours plus de coeurs, et DirectX a dû évoluer dans ce sens. Un premier effort avait été réalisé en 2007 avec DirectX 10 sous Vista. Il était ainsi devenu possible de traiter plus de données en même temps en exploitant davantage les ressources processeur, mais malgré cela, il existait un goulot d'étranglement qui bloquait la réception des tâches envoyées par le CPU au GPU, et au final un seul coeur était mis à contribution.

Globalement la situation, qui a perduré jusque dans DirectX 11 est la suivante : les processeurs graphiques se sont équipés de milliers de coeurs, mais ils n'étaient capables de communiquer qu'avec un seul coeur processeur en simultané. En bref, un seul chef d'orchestre envoie des ordres à des milliers d'opérateurs, tandis que d'autres sont en attente.

Mantle AMD a fait quelques avancées de son côté avec sa technologie Mantle, et a levé quelques limites dans les communications entre GPU et CPU. Microsoft a récupéré cette technologie pour l'intégrer dans DirectX 12.

C'est donc désormais la principale force de DirectX 12 : permettre à chaque coeur du CPU de transmettre des ordres aux processeurs graphiques. Autrement dit, même avec une carte graphique d'entrée ou de moyenne gamme, si l'utilisateur dispose d'un CPU équipé de plusieurs coeurs, les performances devraient être largement accentuées. Une vraie révolution donc.

C'est là que les processeurs Core i7 d'Intel prendront tout leur sens auprès des joueurs, et que les fondeurs pourront miser pour adresser des produits spécifiques au jeu. Dans cette configuration, AMD devrait tirer son épingle du jeu, car si la puissance brute de ses processeurs est souvent critiquée, la firme propose des processeurs équipés de plus de coeurs qu'Intel à l'heure actuelle.

  

Les gains annoncés et confirmés par plusieurs tests réalisés par des confrères sont variables en fonction des configurations et du peu de titres compatibles avec DirectX 12. Reste qu'il n'y a pas qu'au niveau des images par seconde (l'indicateur de performance de base pour tout gamer) que DirectX 12 fera la différence, mais aussi au niveau de la consommation énergétique puisque les processeurs se multiplieront sur une même tâche, et ainsi, ils n'auront pas systématiquement besoin de moduler leur fréquence à la hausse pour boucler les calculs plus rapidement.

Quels gains de performance attendre ?

Pour l'instant, on ne peut pas véritablement donner de chiffre précis, puis qu'il n'existe pas encore de titre natif DirectX 12 permettant de mettre en avant la totalité des avantages de l'API.

DirectX12 Draw Calls 1 Seul 3DMark propose actuellement un benchmark dédié à DirectX 12 qui permet de comparer les différents API ( DX11, DX12 et Mantle). Et le test est sans appel avec des résultats saisissants et des performances rapportées étant de 3 à 6 fois supérieures sur le nombre de Draw Calls affichés entre DirectX 11 et DirectX 12.

Plus la carte graphique est puissante et dispose de coeurs, et plus le gain est significatif, et cela vaut également pour le processeur. C'est chez AMD que l'on constate le plus de DirectX 12 draw calls 3Dmark bienfaits, principalement du fait de pilotes peu ou mal optimisés par le constructeur et qui profitent ainsi d'une nouvelle jeunesse grâce à DirectX 12.

Globalement, les développeurs estiment que pour les jeux AAA qui exploitent un maximum d'effets et de fonctionnalités graphiques, les gains de performance attendus varient entre 10 et 20 % sur les configurations modestes et de 30 à 40% sur les PC les plus puissants. Les configurations qui se révèlent dans la limite basse imposée par les éditeurs pourraient ainsi être révisées à l'avenir, et les joueurs actuels pourraient préférer attendre l'arrivée des titres DirectX 12 avant d'investir dans du nouveau matériel.

A noter que même les jeux actuels, non optimisés DirectX 12, profitent tout de même d'un boost de performance dès qu'ils sont utilisés sous Windows 10 / DirectX 12. Les nouveaux effets de DirectX 12 ne sont pas gérés mais rien que la gestion du multi-threading du CPU apporte une forte amélioration.

Quel matériel pour en profiter ?

C'est la question qui se pose maintenant que Microsoft a mis l'eau à la bouche des joueurs : votre configuration est-elle compatible avec la prochaine révolution dans l'univers du jeu vidéo PC ? Certainement...

Radeon R9 Fury Le premier impératif, on le rappelle, sera de disposer de Windows 10, et cela ne devrait pas poser trop de problèmes, puisque la migration depuis Windows 7 et 8 est gratuite pendant un an.

Ensuite, il faudra être équipé d'une carte graphique dotée d'un GPU compatible, et la bonne nouvelle, c'est que beaucoup le sont déjà !

Chez Nvidia, il faudra miser sur une carte équipée d'un GPU Fermi (GTX 400/500), Kepler (GTX 600/700) ou Maxwell (GTX 700/900), soit les processeurs compatibles avec ses pilotes WWDM 2.0.

Chez AMD, la situation est identique et il faudra être équipé titan z d'une carte compatible avec les pilotes WDDM 2.0 pour Windows 10, soit les cartes embarquant un CPU Radeon 7000, 8000 R200, R300 ainsi que Fury et Fury X

En somme, la plupart des cartes graphiques sorties depuis la mi 2010 chez Nvidia et depuis fin 2011 chez AMD seront aptes à prendre en charge les prochains jeux sous DirectX 12.

Enfin, si vous hésitez encore à passer à Windows 10, nous vous proposons de lire notre dossier test du nouveau système de Microsoft afin de vous aiguiller.

Test Windows 10 : découvrez les nouveautés qui nous attendent

ainsi que nos autres dossiers sur le même sujet :

Windows 10, confidentialité et données personnelles, les solutions pour se protéger

Test Microsoft Edge : que vaut le navigateur de Windows 10 ?