Téléchargez l'application
Tom's Hardware sur l'App Store
Toute l'actu informatique de référence sur votre iPhone
Oui Non

DirectCompute, buffers

par

La grosse nouveauté de Direct3D 11 sur laquelle nous étions rapidement passés lors de notre précédent dossier est donc l’arrivée des fameux Compute Shaders. Contrairement aux autres shaders ces derniers sont indépendants du pipeline 3D, à l’image de CUDA ou d’OpenCL le but est de permettre d’utiliser la puissance de calculs des GPU pour effectuer des calculs génériques, on parle de GPGPU. L’interface proposée est d’ailleurs proche de celle offerte par les deux autres API mais le gros avantage de l’API DirectCompute par rapport à ses rivales, est son intégration dans Direct3D ce qui devrait en faire l’API de choix pour le GPGPU dans le cas des jeux qui reposent déjà sur cette API pour la partie 3D.

Par rapport aux autres shaders, les Compute Shaders offrent plusieurs avantages : comme ils ne sont pas intégrés au pipeline 3D ils n’ont pas d’entrée/sortie fixe, dicté par l’interface avec le reste du pipeline. Un Compute Shader a également un accès totalement libre en lecture/écriture à une zone mémoire de 32 Ko (la TGSM : Thread Group Shared Memory) permettant d’échanger des données entre les threads. La bonne utilisation de cette zone mémoire est primordiale dans le cadre des Compute Shaders car ses performances sont largement supérieures à celles de la mémoire vidéo et surtout elle permet de réaliser des économies substantielles de bande passante par rapport à une implémentation utilisant les Pixel Shaders par exemple.

Enfin les deux dernières fonctionnalités des Compute Shaders, qui sont également disponibles dans les Pixel Shaders contrairement aux précédentes, concernent les accès aléatoires en écriture à la mémoire vidéo (scatter writes) et le support des opérations atomiques qui permettent de garantir que l’exécution des instructions sera effectuée dans l’ordre souhaité.

Si les 3 principales API de GPGPU ont leurs petites particularités de syntaxe, on retrouve dans chacune d’elle les mêmes concepts principaux : ainsi on parle à chaque fois de threads, de bloc de threads et de grilles de threads, les programmeurs ayant déjà pu expérimenter la programmation GPGPU avec CUDA ne devraient donc pas être dépaysés. Enfin une bonne nouvelle, l’API DirectCompute n’est pas réservée aux GPU DirectX 11, Microsoft a en effet défini plusieurs sous ensembles de fonctionnalités permettant d’utiliser l’API sur les GPU DirectX 10 ou DirectX 10.1.

Des buffers plus flexibles

Jusqu’ici les buffers de DirectX contenaient des types de données bien précis : des sommets dans le cas des Vertex ou des Geometry Shaders, des couleurs dans le cas des Pixel Shaders mais un Compute Shader n’a pas vraiment de type de données associés. Il peut travailler sur tout et n’importe quoi. Pour répondre aux besoins de ce type de shaders Microsoft a donc introduit avec Direct3D 11 plusieurs nouveaux types de données.

La première modification concerne les ressources (buffers ou textures). Alors qu’elles n’étaient accessibles qu’en lecture avec Direct3D 10 elles sont désormais accessibles en lecture/écriture. Autre nouveauté, l’introduction d’un nouveau type de buffers appelés Structured Buffer. Comme son nom l’indique ce buffer peut contenir des types de données définis par l’utilisateur : plus besoin donc de se limiter aux vecteurs de flottant ou d’entier, il est désormais possible pour le programmeur de créer une structure plus complexe contenant plusieurs types de données et ensuite d’y accéder dans un shader. On retrouve également un autre type de buffers : le Raw Buffer qui pour sa part contient des données 32 bit brutes, sans type.

Pour permettre des accès totalement aléatoires à la mémoire en lecture/écriture, Microsoft a introduit un nouveau type de vues appelé Unordered Access View qui peut être soit un buffer soit une texture, et qui n’est accessible que dans les Pixel Shaders et les Compute Shaders. Ces ressources peuvent être accédées simultanément en lecture/écriture par plusieurs threads sans générer de conflit mémoire grâce à l’utilisation des instructions atomiques qui garantissent que l’opération sur les données sera terminée avant qu’un autre thread puisse les modifier.

Dernière nouveauté, l’apparition des Append/Consume Buffer qui fonctionnent exactement comme une pile : on ajoute des éléments à la fin du buffer et on les retire également à la fin, c’est une structure de type LIFO (Last In First Out ou Dernier Entré Premier Sorti) qui est particulièrement utile dans le monde de l’informatique classique. La voir arriver dans les Shaders devrait donc simplifier la tâche des programmeurs pour adapter ce type d’algorithmes.

Partager:
53
Commentaires
X
Valider

Commentaires
Lire les commentaires sur le forum
Bbleach59 23/09/2009 07:34
Afficher
toxyflash 23/09/2009 08:10
Masquer
-1+

yep super test, très complet

une petite faute cependant en page 18, "Et reste injouable avec la Radeon HD 5870 en 2560*1600". La HD 4870 plutôt, non ?

djisux 23/09/2009 08:27
Masquer
-0+

La Carte est plus que suffisante je me demande comment nvidia va faire surtout si AMD nous X2 cette derniere !

xenesys 23/09/2009 08:41
Masquer
-1+

Page 9 "Puissance shading 2,4 GFlops"
pour la HD4870x2, ce ne serait pas 2.4TFlops ?
vu que la HD5870 est à 2,72 TFlops


Page 14 "(c’est aussi ça les joies des cartes graphique bi-GPU, qui a par ailleurs occasionnée la mise en sécurité de notre alimentation FSP 1200 W au cours des tests et donc nécessité son remplacement)."
c'est bien la carte video qui a été remplacée , pas l'alim ?
Edit : OK merci pour la precision ;)

Florian c 23/09/2009 08:59
Masquer
-3+

xenesys > Non c'est l'alim qui a été remplacé (elle ne tenait pas le tiers de la charge revendiquée).

Florian c 23/09/2009 09:01
Masquer
-2+

toxyflash > pas de faute non, 25 images/secondes c'est trop faible pour un fps et à fortiori Crysis.

bebRito 23/09/2009 09:02
Masquer
-0+

Intéressante cette nouvelle bête. La bataille reste acharnée.

Ça donne envie de passer chez ATI, pour être (peut-être) déçu dans 6 mois quand les nouvelles Geforce sortiront.

C'est quand même curieux que la nouvelle génération d'ATI ne batte pas tout le temps la HD4870X2 ! Histoire de pilote on va dire ...

Blastm 23/09/2009 09:17
Masquer
-1+

Bon la petite déception; c'est les baisses de performances avec AA activé, il y avait des rumeur qui les disaient plus faibles que ca...

sorti de la, ca me donne envie de remplacer ma 4870 512go achetée peut après sa release :D
vais peut être attendre le début de l'année prochaine que le prix baisse un peut quand même :/

casparf 23/09/2009 09:25
Masquer
-3+

enfin des cartes qui ne consomment plus rien quand on laisse l'ordinateur allumé avec juste le bureau windows.

Butler1 23/09/2009 09:28
Masquer
-2+

Bon manque plus qu'un ventirad pour remplacer celui d'origine et on pourra allier silence parfait et hautes performances :D

En tout cas, aucune déception devant les résultats, la HD5870 single-GPU qui égalise la 4870X2 sans soucis. (sans la suivre dans la consommation électrique )

enestu 23/09/2009 09:57
Masquer
-2+

Les autres tests sur le web ne donnent pas du tout les mêmes résultats avec une carte un peu au dessus de la 285 (part quand on dépasse la qtt de mém des gtx)!?!

neogamer_67 23/09/2009 10:24
Masquer
-1+

Ca le fait ! je commence à regretter d'avoir acheté ma gainward 4870 GS 1Go il y a 3 mois ....
Superbe carte la 5870, content de voir que la compétition Nvidia/Ati ne se repose pas sur ses lauriers !

corei9 23/09/2009 11:19
Masquer
--2+

vraiment décu de cette carte
1,5 à 2 fois mieux qu'une 4870 c'est vraiment pas assez, meme sa version X2 ne cassera surement pas non plus des briques
pour ma part j'attendrais le GT300, en espérant qu'il relève le niveau

OoxpioO 23/09/2009 11:45
Masquer
-3+

Citation :1,5 à 2 fois mieux qu'une 4870

ce qui est déja pas mal du tout, sachant que les pilotes sont loin d'être au poil , et doublé ou presque la puissance d'un gpu d'une génération à l'autre et une avancé technologique intéressante !

Puis il y a de l'avancé, pas comme un certain Nvidia qui renomme c'est carte sans créé vraiment de nouveauté.
les gtx2** sont sympa mais avec une architecture bien trop complexe.

et surtout ne pas oublier, que c'est ATI qui propose cette fois le premier gpu d'une nouvelle génération de dx, rappelez vous le succès des premières carte dx10, une certaine série 8800.. mon petit doigt me dis que c'est carte rencontreront un certain succès, d'autant qu'elle n'ont pas de concurrence avant plusieurs mois!!

Citation :pour ma part j'attendrais le GT300, en espérant qu'il relève le niveau

ça tu peut être sur qu'il le sera (en euro) :d

Moi ce que je retiendrais, c'est que nous avons là un gpu qui nargue la plus haute gamme de la version précédente en bi gpu, avec une consommation à la baisse et des perfs à la hausse.

un bon produit.

FBR1010 23/09/2009 12:00
Masquer
-3+

Il n'y a pas de GTX 285 dans le test ?

anonymous 23/09/2009 12:10
Afficher
Sage_Samourai 23/09/2009 12:24
Masquer
-1+

ON VEUT LES PERFORMANCES SOUS FOLDING@HOME :D
ON VEUT LES PERFORMANCES SOUS FOLDING@HOME :D
ON VEUT LES PERFORMANCES SOUS FOLDING@HOME :D

kyky06 23/09/2009 13:38
Masquer
--1+

350 euros la 5850 ou 5870 ??
sinon vous avez le prix de la 5850 ?
merci

dark-sorrow 23/09/2009 14:02
Masquer
-3+

kyky06 :
350 euros la 5850 ou 5870 ??sinon vous avez le prix de la 5850 ?merci



Faut lire un peu ...
350€ pour la 5870 et 240€ pour la HD5850 !

kyky06 23/09/2009 14:06
Masquer
-0+

Dark-sorrow :
Faut lire un peu ...350€ pour la 5870 et 240€ pour la HD5850 !


dsl et merci dark .

Jamesandebongs 23/09/2009 14:18
Masquer
-1+

bonne carte! mais j'attends les déclinaisons Golden sample/toxic/OC ainsi qu'une evolution (probable en 5890) ... et une petite baisse de prix car ma HD4890 sortie du carton il y a 2 semaines va me faire la tête si je la change tout de suite!

telpat 23/09/2009 16:17
Masquer
-3+

Oui en effet bon teste à par que je suis très étonné de la comparaison que l'on fait de cette nouvelle carte face aux vieillissantes carte GTX260 et 280 (qui son déjà dépassé par la 4890). Pour ma par j'aurais plutôt voulu voir ce que vaux cette carte face à une réel concurrence c.à.d. les GTX 285 et 295. Là au moins nous aurions vue la vrais différence entre le "Haut de gamme" actuel des deux parties.

Florian c 23/09/2009 16:23
Masquer
-1+

... que nous n'avons pas et que personne n'a pu nous procurer.

Mais comme mis dans l'article on va quand même vous proposer cette comparaison dans les prochains jours.

Sage_Samourai 23/09/2009 16:46
Masquer
-1+

Florian et Folding@Home ...

On est bcp à attendre les perfs de la carte dans ce domaine et sur les forums de Folding@Home aucune info ne filtre à ce sujet et aucun sie n'a fait de review à ce sujet :(

Tu pourrais le faire ? Teuplé teuplé teupléééééééééééé :D

anonymous 23/09/2009 16:58
Masquer
--1+

DirectX 11 si important?

Faut pas déconner, c'est pas vraiment un avantage quand on voit les jeux optimisé a 100% DX10 (doit y en avoir 1 ou 2...), on est donc très loin d'exploité DX10 DX10.1 et encore moins DX11, qui reste pour l'heure un argument commerciale sans fondement.

turlupin en ptard 23/09/2009 19:23
Masquer
--1+

Allez, je me lance, histoire de me faire mal voir... :sarcastic:

Citation :les unités fixes qui se chargeaient des calculs d’interpolation ont disparues
...
c’est encore pire du côté des unités de texture qui n’ont pratiquement pas bougées
...
les bases de l’architecture n’ont pas vraiment évoluées
On apprend ces règles à l'école primaire, en principe. M'enfin !

Je ne cite que celles-ci parce que la répétition prouve amplement qu'il ne s'agit pas de fautes de frappe, pour le reste... j'ai la flemme de corriger.

turlupin en ptard 23/09/2009 19:25
Masquer
-1+

bebRito :
Ça donne envie de passer chez ATI, pour être (peut-être) déçu dans 6 mois quand les nouvelles Geforce sortiront.


Voilà qui révèle le drame des fashion victims... désolé de ne pas compatir.

Razor-Wind 23/09/2009 23:59
Masquer
-1+

bebRito :

Ça donne envie de passer chez ATI, pour être (peut-être) déçu dans 6 mois quand les nouvelles Geforce sortiront.

Mouais mais alors autant ne jamais rien acheter sous peine de finir déçu et de pleurer son matériel fort cher payé parce que la relève technologique est arrivée...

Pour ma part, j'attends de voir ce que va donner la castagne DX11 avant de changer ma GTX 280.

Pinkuik 24/09/2009 02:13
Masquer
--2+

telpat :
Oui en effet bon teste à par que je suis très étonné de la comparaison que l'on fait de cette nouvelle carte face aux vieillissantes carte GTX260 et 280 (qui son déjà dépassé par la 4890). Pour ma par j'aurais plutôt voulu voir ce que vaux cette carte face à une réel concurrence c.à.d. les GTX 285 et 295. Là au moins nous aurions vue la vrais différence entre le "Haut de gamme" actuel des deux parties.


La GTX 295 dépasse dans quasiment tous les jeux cette nouvelle 5870 si l'on en croit les premiers tests. Au final plutôt déçut d'avoir avec une architecture où tout a été doublé et théoriquement réoptimisé un 50 % - 100% grand maximum de mieux en prenant de plus comme référence la toute première version 512Go. Seul la consommation est conforme aux promesses.

Les offres du moment

Newsletters


OK