Passer au contenu

Cartes graphiques en quête d’ultraréalisme

L’évolution spectaculaire qu’ont subie les processeurs graphiques leur vaut de délester désormais le processeur central de toutes les tâches inhérentes au traitement 3D.

De manière générale, pour pouvoir afficher une image sur son écran, un ordinateur doit être équipé d’une carte d’extension spécifique, la carte graphique. Charge à elle de traiter et de convertir les données numériques provenant de l’unité centrale en un signal numérique ou analogique exploitable par l’écran. Si les premières cartes graphiques ne pouvaient afficher qu’en 2D, toutes gèrent désormais les traitements 3D.Le processeur graphique (GPU) joue le rôle central en assurant tous les calculs nécessaires à l’affichage en trois dimensions. Il est secondé par la mémoire vidéo qui conserve les données numériques devant être converties en image, mais aussi les images traitées avant l’affichage. Figurent aussi les différentes sorties vidéo : VGA pour les écrans cathodiques (en voie de disparition), DVI, HDMI (encore rare) pour les écrans plats et S-Vidéo pour la TV. La carte est reliée à la carte mère par le biais d’un port PCI-Express, successeur de l’AGP.

Des pipelines dynamiques

Jusque-là, rien de bien sorcier. Si ce n’est que le GPU a subi ces derniers temps une évolution spectaculaire. À l’origine, et de façon schématique, il fonctionnait à l’aide d’un ‘ vertex pipeline ‘ et d’un ‘ pixel pipeline ‘, le premier traitant de l’aspect géométrique (création de formes depuis des polygones), le second calculant le rendu à l’écran (texture, couleurs, éclairage). Figés au début sur quelques fonctions, ces pipelines sont devenus dynamiques grâce à des shaders, des petits programmes qui permettent d’enrichir le traitement de chaque vertex et pixel.Aujourd’hui, chez nVidia comme chez ATI, les GPU deviennent des coprocesseurs massivement parallèles qui reposent sur une architecture superscalaire. En langage clair, ils secondent désormais de façon permanente le processeur de l’ordinateur en le délestant d’un nombre incalculable de tâches qu’ils peuvent effectuer de façon simultanée. À titre d’exemple, le GeForce 8 de nVidia est capable de traiter jusqu’à 4 millions d’opérations de façon instantanée pour un rendu Xtreme HD sur un écran 30 pouces (2 560 x 1 600 points). Dans cette architecture, les fabricants positionnent sur le GPU un nombre conséquent d’unités appelées également c?”urs, processeurs de shaders ou encore stream processors. Sur les GeForce 8 haut de gamme, on en dénombre pas moins de 128. Ces unités sont capables de traiter indifféremment les données d’un vertex ou d’un pixel, voire de procéder à des simulations scientifiques ou décoder à la volée des vidéos en très haute définition.

Directx 10 unifie les shaders

Avec l’ancienne génération de GPU, le vertex pipeline et le pixel pipeline remplissaient leur fonction de façon spécifique, mais l’un ou l’autre pouvait à un moment donné être inactif, en attente d’instructions. Avec la nouvelle génération de GPU, chaque unité de traitement peut être constamment sollicitée, sans temps mort. D’où un accroissement important des performances, ce qui tombe plutôt bien car les shaders permettent d’appliquer des fonctions mathématiques de plus en plus complexes sur les pixels et les textures. Textures auxquelles est souvent associé un filtrage. Même si ATI et nVidia travaillent depuis plusieurs années sur cette architecture, on peut estimer qu’elle a pris véritablement corps chez ATI avec les Radeon R600 sorties courant 2007 et commercialisées sous le nom de Radeon HD 2900. Chez nVidia, cette évolution s’est concrétisée avec l’architecture GeForce 8, sortie quelques mois plus tôt. Ce constat prend tout son sens quand on sait que ces deux générations de GPU sont également les premières à tirer profit de l’interface DirectX 10. Ce composant logiciel permet à l’ordinateur d’accéder aux fonctions des cartes graphiques. Dans cette version, Microsoft a remis à plat toute l’architecture de son interface de programmation (API pour Application Programme Interface) afin d’obtenir des performances plus élevées (en délestant encore plus le processeur central d’un nombre important de tâches 3D) et d’ajouter de nouvelles fonctions dans le développement 3D qui a été simplifié au passage. De plus, DirectX 10 unifie les shaders en s’appuyant sur un jeu d’instructions commun aux vertex et aux pixels shaders, ce qui va dans le sens de l’évolution des GPU. Elle permet également d’aller encore plus loin dans la conception de formes géométriques, notamment par le biais du nouveau ‘ Geometry Shaders ‘. À noter que l’API est conçue pour Vista et n’est pas compatible avec les anciennes versions de Windows. Ce qui justifie, encore, de casser la tirelire !

🔴 Pour ne manquer aucune actualité de 01net, suivez-nous sur Google Actualités et WhatsApp.


Rémi Langlet