Publié dans Logiciel

12

L’API DirectStorage désormais disponible sur Windows

L’API DirectStorage désormais disponible sur Windows

Avec les dernières Xbox, Microsoft avait publié une API permettant au GPU de communiquer directement avec le stockage de la machine, sans passer par le processeur central : DirectStorage. Dans un premier temps, la nouvelle interface ne devait s'étendre qu'à Windows 11, avant que l’éditeur se ravise.

« À partir d’aujourd’hui, les jeux Windows peuvent être publiés avec DirectStorage. Ce SDK public débute une nouvelle ère de temps rapides de chargement et de mondes détaillés dans les jeux PC en permettant aux développeurs d’utiliser pleinement la rapidité des derniers périphériques de stockage », annonce fièrement l'entreprise.

Évidemment, le résultat devrait être bien plus sensible sur un SSD NVME qu’un disque dur SATA classique. Dans tous les cas, DirectStorage doit réduire grandement le nombre d’opérations entrées/sorties en évitant des traitements inutiles et en parallélisant les instructions. Seule condition, avoir un GPU compatible DirectX 12.

Notez que si Windows 10 est compatible avec les jeux qui prendront en charge DirectStorage à compter de sa version 1909 (l’immense majorité), Microsoft insiste sur les performances supérieures de Windows 11, qui contient des optimisations spécifiques pour le stockage.

Au-delà de ces élans marketing, on attend maintenant de voir les jeux qui tireront parti de la nouvelle API.

12

Tiens, en parlant de ça :

#Flock fait son cinéma

Huahu ahu ouin ouin ouiiin... Vous l'avez ?

13:37 Flock 24

Le fichier des empreintes digitales sera interconnecté avec huit autres fichiers

FAED y verse

17:24 DroitSécu 9
Les logos de Facebook et Meta dans des carrés en 3D sur un fond grisé dégradé

Le ciblage publicitaire ne peut pas utiliser des données personnelles récupérées ailleurs

Schrems vs Meta, encore et encore

16:53 DroitSocials 8
Le brief de ce matin n'est pas encore là

Partez acheter vos croissants
Et faites chauffer votre bouilloire,
Le brief arrive dans un instant,
Tout frais du matin, gardez espoir.

12

Fermer

Commentaires (12)


“Microsoft insiste sur les performances supérieures de Windows 11, qui contient des optimisations spécifiques pour le stockage”



Alors même qu’ils sont dans la sauce à cause des chutes de performances jusqu’à 50% sur les SSD après migration vers Windows 11. :mad2:


J’attends de voir avec des vrais benchs aussi. Je m’attends - du moins au début - a des blagues du genre “Performance W10: 100%, perf W11: 89%” :D


Seul certains SSD étaient concernés et cela a été corrigé en debut année.


Quelqu’un dans la sécurité informatique a une opinion sur le sujet ? Car personnellement, je vois cette techno comme une porte d’entrée à des contenus malicieux. Quel est le niveau de privilèges accordé à ces routines ? Y-a-t-il des mesures de coercition ou de protection ? Bref, est-ce bien pensé pour (tenter d’) éviter toute malversation par ce biais ?



obor2 a dit:


Quelqu’un dans la sécurité informatique a une opinion sur le sujet ? Car personnellement, je vois cette techno comme une porte d’entrée à des contenus malicieux. Quel est le niveau de privilèges accordé à ces routines ? Y-a-t-il des mesures de coercition ou de protection ? Bref, est-ce bien pensé pour (tenter d’) éviter toute malversation par ce biais ?




C’est difficile de trouver des informations détaillées là dessus, mais si je cite l’annonce par Microsoft:




NVMe devices are not only extremely high bandwidth SSD based devices, but they also have hardware data access pipes called NVMe queues which are particularly suited to gaming workloads. To get data off the drive, an OS submits a request to the drive and data is delivered to the app via these queues.




Donc à priori la requête transite toujours par l’OS, qui vérifie certainement les droits d’accès au fichier. Je ne pense pas qu’il y ait de souci de sécurité.



Les bénéfices sont, j’ai l’impression :




  • Du batching. Au lieu de faire une requête par bloc de données, l’application peut juste demander “j’ai besoin de tout ça” en un seul appel et l’OS s’occupe de gérer tout ça (les appels systèmes sont coûteux)

  • Ce n’est pas mentionné explicitement, mais je suppose qu’il y a une forme de DMA (direct memory access) où le SSD doit pouvoir pousser l’information directement dans la mémoire du GPU sans transiter par la RAM


Oui mais après, si un groupe de hacker vole les clés Windows (exemple piratage de Nvidia qui se fait hack les clés valides pour les drivers Windows … … …), et bien tu peux avoir un ransomware qui vient se coller sur le PC pour crypter les datas sans failles de sécurité Windows.
Alors j’exagère mais c’est possible pour moi


SckyzO

Oui mais après, si un groupe de hacker vole les clés Windows (exemple piratage de Nvidia qui se fait hack les clés valides pour les drivers Windows … … …), et bien tu peux avoir un ransomware qui vient se coller sur le PC pour crypter les datas sans failles de sécurité Windows.
Alors j’exagère mais c’est possible pour moi


Il faudrait que l’API permettent par un quelconque moyen la modification et l’écriture sur le disque. J’ai du mal à en voir l’intérêt d’un tel droit, l’accès en lecture seul suffit à priori (le but premier étant de charger en mémoire du GPU les textures et les asset sans passer par le processeur et la mémoire centrale).



Après, comme dit plus haut, ça semble dans tous les cas toujours passer par un appel à l’OS (aux drivers, à DirectX…), et donc avec les droits associé. Donc a priori, on pourrait estimer qu’il n’y a pas plus de risque que n’importe quel API.


Je suppose que cela doit être implémenté par les développeurs directement dans le jeu et que les jeux ne sont pas automatiquement compatibles.



Ce sera intéressant de voir le gain de performance et de temps de chargement sur des jeux existants qui seront patchés pour en profiter.



Seule condition, avoir un GPU compatible DirectX 12.




Il faut aussi que le jeu tourne sous DX12 aussi.
Ce n’est pas près d’arriver sur FF14 :roll:


Ca devrait permettre de dégager un peu de temps CPU en le déchargeant de la gestion des transferts de données donc pourquoi pas.
Après dans le cadre du jeu vidéo sauf exception la saturation ne vient pas du CPU mais du GPU donc ça ne devrait pas changer grand chose.
J’imagine que ça aura plus de sens, et d’efficacité, dans le cadre de l’utilisation GPGPU et trucs du genre



Guinnness a dit:


…Après dans le cadre du jeu vidéo sauf exception la saturation ne vient pas du CPU mais du GPU donc ça ne devrait pas changer grand chose…




Donc les mmorpg sont des exceptions, les rts aussi, et je dois oublier d’autres genres. :transpi:


Y a encore des gens qui jouent à ce genre de jeux aujourd’hui ? :transpi: :langue:



Je parlais surtout pour le AAA d’action typique avec des graphismes qui claquent (pour faire diversion sur la pauvreté du reste :transpi:) et une optimisation à la truelle qui met généralement à genoux les meilleurs GPU mais laisse les CPU se tourner les pouces.
Sur ce genre de jeux les perfs ne dépendent pas spécialement des taux de transfert avec le stockage (suffit de voir l’impact quasi nul du passage SSD Sata > SSD NVME pcie 4x, on gagne un pouième sur les temps de chargement mais pas grand chose de significatif)