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

Un nouveau modèle de driver

par

Même si le nouveau modèle de driver ne fait pas partie de l’API à proprement parler, il est impossible d’évoquer Direct3D 10 sans y faire référence. Le WDDM (Windows Display Driver Model) repose sur une toute nouvelle architecture divisée en deux modules :

  • un module résidant en espace utilisateur.
  • un deuxième module situé dans l’espace noyau.
Pour bien comprendre l’intérêt de cette architecture plaçons nous dans un cas concret : sous Windows XP, lorsqu’une commande est envoyée au GPU elle passe d’abord par le runtime Direct3D, celui-ci est fourni par Microsoft et n’a aucune connaissance du GPU sous jacent. Par conséquent il crée un buffer DMA dans un format indépendant du matériel. Ce buffer DMA abstrait est ensuite passé au driver qui lui a une connaissance du matériel, il doit donc tout d’abord interpréter le buffer reçu puis le réencoder dans un format spécifique au GPU.

Mais c’est idiot me direz-vous, pourquoi ne pas envoyer directement chaque commande au driver ? Et bien parce que ce driver est en espace noyau contrairement à l’application qui est en espace utilisateur, et un changement de mode pour le CPU étant extrêmement coûteux, l’API cherche donc à les éliminer en remplissant le command buffer avec plusieurs commandes avant de l’envoyer au driver. Bref entre deux maux, les ingénieurs ont choisi le moins grave. Malgré tout cette phase d’encodage/décodage intermédiaire a un coût et c’est ce que le nouveau modèle de driver cherche à éliminer.

Ainsi lorsque l’application écrit une commande Direct3D, celle-ci est passée au runtime mais au lieu de l’encoder dans un format abstrait, il appelle le driver situé en espace utilisateur qui compile directement un buffer DMA interprétable par le matériel. Un autre avantage de cette architecture est que le plus gros du travail est effectué dans le driver résidant en espace utilisateur. Le driver noyau ne se contente donc plus que des tâches de très bas niveau (la programmation effective du GPU) et par conséquent le système est plus stable vu que la quantité de code exécuté en espace noyau se trouve réduite.

Le seul, et non des moindres, inconvénient de ce nouveau modèle de driver reste au final qu’il interdit le support de DirectX 10 pour Windows XP. Alors on peut maudire Microsoft et affirmer que tout ceci n’est qu’un complot pour obliger les joueurs à passer à Vista. On peut aussi analyser les choses avec un oeil technique et à ce niveau il faut tout de même reconnaître que supporter ce nouveau modèle de drivers sous XP aurait représenté un travail considérable. En effet outre Direct3D le nouveau modèle de driver affecte également le fonctionnement du GDI (la norme de Windows pour afficher des objets graphiques à l’écran et qui est à la base de toute l’interface utilisateur de l’OS de Microsoft) qui aurait du être modifié pour supporter le nouveau modèle de driver. C’était trop d’efforts pour une société déjà bien occupée par le développement de son nouvel OS.

Partager:
35
Commentaires
X
Valider

Commentaires
Lire les commentaires sur le forum
YannOucH 06/11/2006 10:14
Masquer
-0+

Merci c'est un excellent article ! Le premier en français en plus je pense !

SpadVIII 06/11/2006 10:32
Masquer
-0+

Citation :

Merci c'est un excellent article ! Le premier en français en plus je pense !




Presque:

http://www.hardware.fr/articles/63 [...] -gpus.html (7 juillet 2006)


Sinon, très bon article en effet ! :jap:

ronaldo1 06/11/2006 11:14
Masquer
-0+

Je ne savait pas que directx se limitait qu'a Direct 3D ;)

SpadVIII 06/11/2006 11:22
Masquer
-0+

Citation :

Je ne savait pas que directx se limitait qu'a Direct 3D ;)




C'est la partie de DirectX qui interesse le plus de monde ! La partie gestion des Joystick et autres volants (entre autre) est beaucoup moins passionnante ! :D (même si pas inintéressante finalement).

fourbe 06/11/2006 11:27
Masquer
-0+

Article de très grande qualité !
A mettre en avant au lieu de l'article sur le fusion d'amd :)

et puis bravo microsoft. Meme si on doit changer d'os, Dx avait besoin d'une grosse mise à jour.

Zeross 06/11/2006 12:00
Masquer
-0+

Citation :

Je ne savait pas que directx se limitait qu'a Direct 3D ;)




En fait le nom officiel de la nouvelle API est Direct3D 10, même si l'appelation DirectX 10 est acceptée par MS. Les autres parties de l'API n'évoluent plus et son vouées à être remplacées par leurs équivalents XNA.

ultrabill 06/11/2006 12:11
Masquer
-0+

Citation :

C'est la partie de DirectX qui interesse le plus de monde ! La partie gestion des Joystick et autres volants (entre autre) est beaucoup moins passionnante ! :D (même si pas inintéressante finalement).


Et les parties Audio et Réseau ça sert à rien :o ??

PSIKUS 06/11/2006 12:17
Masquer
-0+

ce qui est bien avec ce genre d'article c'est que l'on comprend tout desuite, surtout le lundin matin, ca met en forme pour la semaine LOL

SpadVIII 06/11/2006 12:50
Masquer
-0+

Citation :

Et les parties Audio et Réseau ça sert à rien :o ??




Si, c'est pour ça que j'ai dit "entre autre"... :o

Celeron466 06/11/2006 13:27
Masquer
-0+

Faut-il garder sa vieille carte graphique de côté, pour continuer à jouer à Quake II ou au 1er Tomb Raider ? Comment faire si je veux jouer à POD : garder un second pc avec une bonne vieille radeon 7000 sous Xp, ou bien une Voodoo 4500 de chez 3dfx...
Jusqu'à quel API les cartes DirectX10 seront-elles rétrocompatibles, seulement DirectX 9 ? - Je parlais de Quake II qu'en est -il d'Open GL, et de ses différentes versions ? (pardon d'avance si j'ai manqué un passage)

AccroPC2 06/11/2006 13:30
Masquer
-0+

C'est un article très interessant, dommage que le francais utilisé soit un peu limite

Citation :modèle de driver impacte également

Citation :le moins pire

etc...

Oui, je sais c'est pointilleux ( surtout que personnellement, je ne suis pas très fort ). Mais vous êtes des pros, non ?

Zeross 06/11/2006 13:49
Masquer
-0+

Citation :Faut-il garder sa vieille carte graphique de côté, pour continuer à jouer à Quake II ou au 1er Tomb Raider ? Comment faire si je veux jouer à POD : garder un second pc avec une bonne vieille radeon 7000 sous Xp, ou bien une Voodoo 4500 de chez 3dfx...
Jusqu'à quel API les cartes DirectX10 seront-elles rétrocompatibles, seulement DirectX 9 ? - Je parlais de Quake II qu'en est -il d'Open GL, et de ses différentes versions ? (pardon d'avance si j'ai manqué un passage)


Direct3D 10 par défaut n'est pas rétrocompatible. Pour faire tourner les anciens jeux Vista intègrera une version de DirectX 9 adapté au nouveau modèle de driver. Si les anciens jeux fonctionnaient avec DirectX 9 en principe ce sera toujours le cas sous Vista. En ce qui concerne OpenGL après quelques tergiversations, au final Vista offrira un support complet, les versions supportées ne dépendant que du fabriquant de carte graphique et pas de MS.

Citation :

C'est un article très interessant, dommage que le francais utilisé soit un peu limite

Citation :modèle de driver impacte également

Citation :le moins pire

etc...

Oui, je sais c'est pointilleux ( surtout que personnellement, je ne suis pas très fort ). Mais vous êtes des pros, non ?




Non ce n'est pas pointilleux c'est justifié, "moins pire" est en effet très laid j'ai honte ;)
Par contre j'avoue que je ne vois pas le problème avec la première phrase :??:

charon 06/11/2006 13:59
Masquer
-0+

Tres bon article :)

SpadVIII 06/11/2006 14:25
Masquer
-0+

Maintenant, on devrait assiter à un grand bon en avant dans la prochaine génération de jeux:

* Processeurs plus puissant et support du multi-core de plus en plus courant.

Alors que dans le même temps nous trouvons:

* Une API plus légère, donc CPU moins sollicité
* Un CPU qui se décharge en plus de certain calculs pour les refiler au GPU
* GPU permettant encore plus d'effet graphiques et toujours plus puissant

= Gain final surement très impressionnant !!! :ouch: (enfin, on a déjà un aperçu dans certain trailers... :love: )

ultrabill 06/11/2006 16:07
Masquer
-0+

Citation :

Si, c'est pour ça que j'ai dit "entre autre"... :o


c'est un peu trop facile ça :o

AccroPC2 06/11/2006 16:16
Masquer
-0+

Alors pour la première phrase ... Le verbe "impacter" n'existe pas dans la langue française ( même si il est très employé ) ;)

Eric B 06/11/2006 16:16
Masquer
-0+

article intéressant, meme si je n'ai pas pris le temps de lire tout en détails.
On comprend mieux pourquoi DX10 ne tournera pas sous XP. Sans aller jusqu'au "complot", il est clair que ce n'est pas intéressant pour MS de redevelopper son GDI pour XP.
Cela reste toutefois un bon argument pour passer tot ou tard à Vista: la communauté de joueur représente un beau panel de clients pour MS qui va encore pouvoir gonfler son compte en banque...
Sans vouloir ouvrir de troll, je pense que c'est d'ailleurs bien ce que bcp critiquent à MS: profiter pleinement de notre société capitaliste.

Celeron466 06/11/2006 18:36
Masquer
-0+

Citation :Direct3D 10 par défaut n'est pas rétrocompatible. Pour faire tourner les anciens jeux Vista intègrera une version de DirectX 9 adapté au nouveau modèle de driver. Si les anciens jeux fonctionnaient avec DirectX 9 en principe ce sera toujours le cas sous Vista. En ce qui concerne OpenGL après quelques tergiversations, au final Vista offrira un support complet, les versions supportées ne dépendant que du fabriquant de carte graphique et pas de MS.


Ah merci bien pour la réponse ! Heureusement que l'Open GL est supporté, car Quake Wars En. Ter. par exemple n'est pas encore sorti ! et ça l'aurait fichu mal que des titres comme Doom 3 ou Quake 4 ne passent plus sous Vista... sacré Carmack !

YannOucH 06/11/2006 20:43
Masquer
-0+

Citation :

Presque:

http://www.hardware.fr/articles/63 [...] -gpus.html (7 juillet 2006)


Sinon, très bon article en effet ! :jap:




Ah merci il m'avait échapper celui-là, il est vieux en plus je suis impardon(n)able ! ;)

AccroPC2 06/11/2006 21:31
Masquer
-0+

Si j'ai bien compris tu ne pourras plus jouer a tes jeux DX8-9 sous DX10 ( pas de retro compatibilité ). A mon humble avis tout le monde n'est pas pret a jeter tous ses jeux à la benne. Donc l'avenement de vista pour le jeu, c'est pas pour demain.

fourbe 06/11/2006 21:36
Masquer
-0+

nan c'est pas vraiment ca.
C'est surtout que plus aucune carte vidéo antérieur à DX10 pourra faire fonctionner un jeu sous DX10.
La rétrocompatibilité sera surtout à ce niveau.
Apres j'espere pour microsoft qu'on pourra tjs jouer aux jeux plus vieux. Parce qu'ils ont aussi une branche jeux ;)

Mictateur 07/11/2006 09:29
Masquer
-0+

Citation :

Donc l'avenement de vista pour le jeu, c'est pas pour demain.



On parie ? ;)

Citation :

Apres j'espere pour microsoft qu'on pourra tjs jouer aux jeux plus vieux. Parce qu'ils ont aussi une branche jeux ;)



D'après ce que j'ai compris, non, DX10 ne permettra pas cela.
C'est WGF 1.0 (DirectX 9L, quoi) qui prendra en charge le côté compatibilité, puisqu'il s'agit juste d'une version de DX9 modifiée pour fonctionner sous Vista. [:spamafote]
WGF 2.0 (DX10) s'occupera de la nouvelle génération. :)


Edit : en fait, je viens un peu de répéter ce que disais Zeross un peu plus haut... :o

Edit bis : j'ai oublié de dire que cet article est franchement génial et très intéressant (en plus d'être assez... enfin, les infos sont tout de même assez bien décortiquées !). :jap:

Deux gros points noirs quand même :
- un petit F7 sous Word, ça ne tue personne. Enfin, à part les rédacteurs, j'ai jamais vu personne en mourir.
- un lexique est du genre... heu... INDISPENSABLE. Sur certains points, j'ai réellement du mal à suivre, et pourtant je suis (du verbe 'suivre') un minimum ce genre d'actualités. J'ai du mal à imaginer un néophyte de la 3D temps réel devant cette article (alors ma grand-mère... [:rire2] ). Des mots sont balancés, comme ça, de manière très violente, et des fois, ça fait mal, on se sent vraiment stupide (même en connaissant les trois quarts des mots techniques, y'a des moments...).

Loacoon 07/11/2006 13:15
Masquer
-0+

Super article, et j'avoue mieux comprendre les raisons de MS pour la compatibilité avec XP.

Citation :
Deux gros points noirs quand même :
- un petit F7 sous Word, ça ne tue personne. Enfin, à part les rédacteurs, j'ai jamais vu personne en mourir.
- un lexique est du genre... heu... INDISPENSABLE. Sur certains points, j'ai réellement du mal à suivre, et pourtant je suis (du verbe 'suivre') un minimum ce genre d'actualités. J'ai du mal à imaginer un néophyte de la 3D temps réel devant cette article (alors ma grand-mère... [:rire2] ). Des mots sont balancés, comme ça, de manière très violente, et des fois, ça fait mal, on se sent vraiment stupide (même en connaissant les trois quarts des mots techniques, y'a des moments...).

Pour une fois je suis d'accord avec toi ;).

wedge 07/11/2006 13:52
Masquer
-0+

Article très interessant et d'un bon niveau technique. Reste a voir ce que ca donnera vraiment avec les premiers benchs et Windows Vista et les premières CG Dx 10 :)

fourbe 07/11/2006 13:56
Masquer
-0+

pour moi les bench c'est comme les stats. Ca n'arrange que ceux qui les font.

Mictateur 07/11/2006 14:17
Masquer
-0+

Citation :

Pour une fois je suis d'accord avec toi ;).



Champaaaaaaaaaaaaagne !



...





LA CHENILLE ! LA CHENILLE ! LA CHENILLE ! LA CHENILLE ! :o

Ashitaka81 07/11/2006 15:14
Masquer
-0+

Moi aussi je suis pointilleux ;)

- Le lien pour réagir en bas de l'article renvoie sur l'article même, pas sur ce forum, c'est normal ?
- "8192x9192" c'est pas très rond.
- "aussi suscitions nous des espoirs", c'est la fête du saucisson :D Plus sérieusement, c'est l'implémentation qui suscitait quelque chose (de l'espoir en l'occurence), pas nous.
- "la rétro-compatibilité abandonnée, un choix rare et courageux, basé sur la technologie et pas sur le marketing"... Faut pas abuser non plus. Effectivement en lisant ce test on se rend compte qu'ils ont fait les choses dans le bon sens, proprement et dans un soucis d'efficacité, mais de là à dire que ce n'est pas marketing, mais rare et courageux, il y a un pas énorme que je ne franchis pas.

ultrabill 07/11/2006 20:01
Masquer
-0+

Citation :

Si j'ai bien compris tu ne pourras plus jouer a tes jeux DX8-9 sous DX10 ( pas de retro compatibilité ). A mon humble avis tout le monde n'est pas pret a jeter tous ses jeux à la benne. Donc l'avenement de vista pour le jeu, c'est pas pour demain.


Donc "non" :o
J'ai pu jouer à Dungeon Keeper sous Vista ;)

Comme l'a dit fourbe, on ne pourra pas lancer de jeux DX10 sur une carte DX5-6-7-8-9.
Actuellement, à part la folie, rien ne t'empèche de jouer à Battlefield sur une TNT2. Avec les jeux DX10, ce sera impossible ;)

Mictateur 07/11/2006 22:16
Masquer
-0+

Citation :

Actuellement, à part la folie, rien ne t'empèche de jouer à Battlefield sur une TNT2. Avec les jeux DX10, ce sera impossible ;)



Tu oublies les options "pari stupide" et "sado-masochisme". ;)

ultrabill 07/11/2006 23:02
Masquer
-0+

Citation :Tu oublies les options "pari stupide" et "sado-masochisme". ;)
c'est pas faux [:grut]

Les offres du moment

Newsletters


OK