Friday, October 14th 2022
DirectStorage not used by any Games, Microsoft hopes DirectStorage 1.1 with GPU Asset Decompression can Fix This
Back in March 2022, Microsoft formally debuted the DirectStorage 1.0 API that enables direct interactions between a GPU and a storage device; thereby reducing the processing load of the storage stack on the CPU and main memory. This release, however, lacked a killer feature that's available to consoles—asset decompression. With the lukewarm response from game developers to DirectStorage 1.0 for PC, Microsoft has finally updated the API, introducing the feature with DirectStorage 1.1.
With this feature, your GPU can not only directly fetch game assets from the storage device (an SSD that uses either NVMe or AHCI protocols), but also pull them in their natively-stored compressed state. These assets are then decompressed by the GPU using compute shaders, and the decompressed assets remain in the video memory. This will directly impact game loading times, as asset decompression no longer involves the CPU. Its impact on the game's framerate will be minimal, as the API mainly accelerates game loading times, not gameplay itself. Game assets are organized pieces of data such as textures, 3D model files, music, sound effects—pretty much all of the individual pieces of content that make up a 3D scene.File compression (and decompression) remains a compute-heavy workload that benefits from parallelism, and here the GPU and its faster memory help greatly. Once the relevant assets are committed to video-memory, the remaining data from the asset containers are purged from video memory to make room for the rest of the game's memory load. Microsoft in its tech demo example showed how a 3D scene's assets were loaded in 0.8 seconds with DirectStorage 1.1, compared to 2.36 seconds without it. This is just a synthetic example, you can imagine the impact on much larger AAA games that take dozens of seconds to load levels, even with NVMe SSDs. The hold-up here is not the storage device, but the CPU trying to decompress relevant assets.
Along with DirectStorage 1.1, Microsoft is introducing GDeflate, a file compression format for game assets, developed by NVIDIA, and is working with all PC GPU manufacturers, including AMD and Intel, to add support for this file format through graphics driver updates. The format is optimized for highly parallelized compression and decompression methods over a large number of threads, which make them better optimized for GPUs. This doesn't necessarily mean that all games have to use GDeflate in order to take advantage of GPU-accelerated asset decompression over DirectStorage 1.1, it's just an added optimization for game developers working on new projects. Patching already-released games to have GDeflate would involve redistributing the entire game asset load (which is still fine if the developer chooses to).
Microsoft plans to release DirectStorage 1.1 to game developers toward the end of 2022. The first games released or patched with DirectStorage 1.1 support should start coming out in 2023.
Source:
Microsoft DirectX Blog
With this feature, your GPU can not only directly fetch game assets from the storage device (an SSD that uses either NVMe or AHCI protocols), but also pull them in their natively-stored compressed state. These assets are then decompressed by the GPU using compute shaders, and the decompressed assets remain in the video memory. This will directly impact game loading times, as asset decompression no longer involves the CPU. Its impact on the game's framerate will be minimal, as the API mainly accelerates game loading times, not gameplay itself. Game assets are organized pieces of data such as textures, 3D model files, music, sound effects—pretty much all of the individual pieces of content that make up a 3D scene.File compression (and decompression) remains a compute-heavy workload that benefits from parallelism, and here the GPU and its faster memory help greatly. Once the relevant assets are committed to video-memory, the remaining data from the asset containers are purged from video memory to make room for the rest of the game's memory load. Microsoft in its tech demo example showed how a 3D scene's assets were loaded in 0.8 seconds with DirectStorage 1.1, compared to 2.36 seconds without it. This is just a synthetic example, you can imagine the impact on much larger AAA games that take dozens of seconds to load levels, even with NVMe SSDs. The hold-up here is not the storage device, but the CPU trying to decompress relevant assets.
Along with DirectStorage 1.1, Microsoft is introducing GDeflate, a file compression format for game assets, developed by NVIDIA, and is working with all PC GPU manufacturers, including AMD and Intel, to add support for this file format through graphics driver updates. The format is optimized for highly parallelized compression and decompression methods over a large number of threads, which make them better optimized for GPUs. This doesn't necessarily mean that all games have to use GDeflate in order to take advantage of GPU-accelerated asset decompression over DirectStorage 1.1, it's just an added optimization for game developers working on new projects. Patching already-released games to have GDeflate would involve redistributing the entire game asset load (which is still fine if the developer chooses to).
Microsoft plans to release DirectStorage 1.1 to game developers toward the end of 2022. The first games released or patched with DirectStorage 1.1 support should start coming out in 2023.
60 Comments on DirectStorage not used by any Games, Microsoft hopes DirectStorage 1.1 with GPU Asset Decompression can Fix This
Or do graphics cards have free compute shaders that can run decompression to load assets while gaming?
But this is really moving very slowly - for a technology that already works on gaming consoles, which are more or less assembled from midrange PC parts...
Gentlemen (and ladies) patch your games!
DirectX includes DirectX Raytracing (DXR).
Upscaling/FSR/DLSS/XeSS are a bit higher level, up from base graphics APIs. VRR is on a different level as well, more on the hardware side.
As for Microsoft, the signs are more in the way that they are reconsidering their focus from Xbox to the entire ecosystem of Windows which includes Xbox. API pieces, games, services are coming from Xbox over to PC/Windows. Most notable are probably the games. Xbox Series X/S has barely any exclusives any more.
Plus the game has to be developed to use it much like Rtx etc.
So not sure there's a Game out that uses it yet.
videocardz.com/newz/microsoft-confirms-directstorage-1-1-with-gpu-decompression-is-coming-soon
As it has been discussed here before, it should also work in win10 although it lacks some 11 specific optimizations.
Well i hope that it will get leveraged pretty quickly as loading time on PC suck. (But i think in some game it's just very bad coding).
I wonder how it will be usefull in realtime in an openworld game. Using the compute units to decompress the assets might means framerate dips due to less ressources avaialble to render. We will see. Remember that the PS5 have a dedicated chip for that.
Right.
benefit to this is that you no longer have lots of assets taking up memory while just sitting their waiting to be used, which in turn can potentially reduce the amount of VRAM required by the game.
I also agree, this has been a long time coming to for PC games. We have had RTX IO since the 30 series launch and AMD has Smart Access Storage to implement DirectStorage.
Secondly it's obviously not memory it's storage try fitting gtaV on your 64GB ram cache.
1. DMA transfer from SSD to RAM
2. CPU reads compressed data from RAM
3. CPU writes uncompressed data to RAM in small chunks (lots of it because, well, it's uncompressed)
4. DMA transfer from RAM to VRAM in large chunks (because PCIe is inefficent for small transfers)
Here are a couple of links, the nVidia one has a some flow charts showing the difference, the AMD one has a video embedded from the Computex Keynote. SmartAccess Storage explanation starts at 12:40 on the timeline.
www.nvidia.com/en-us/geforce/news/rtx-io-gpu-accelerated-storage-technology/
www.amd.com/en/events/computex
learn.microsoft.com/en-us/gaming/gdk/_content/gc/system/overviews/directstorage/directstorage-overview
github.com/microsoft/DirectStorage