Monday, November 7th 2022

Microsoft DirectStorage 1.1 with GPU-accelerated Game Asset Decompression Released

Microsoft formally released the DirectStorage 1.1 API to game developers on Monday, allowing them to take advantage of GPU-accelerated game asset decompression, to help minimize game loading times. DirectStorage establishes a path for GPUs to directly access storage devices on a system. With version 1.1, the API introduces a way by which the PC can use the GPU to decompress game assets. Microsoft is also promoting GDeflate, a new file compression format developed by NVIDIA, which is optimized for highly parallelized decompression techniques, making it suitable for GPUs. NVIDIA, Intel, and AMD, have each responded positively to this development, and rolled out early drivers with DirectStorage 1.1 support, which can be used by game developers or students. The three will add official DirectStorage 1.1 support to their regular driver update channels later.

DOWNLOAD: DirectStorage 1.1 early-support (not official) drivers for NVIDIA GeForce | AMD Radeon | Intel Arc
Source: Microsoft DirectX Blog
Add your own comment

39 Comments on Microsoft DirectStorage 1.1 with GPU-accelerated Game Asset Decompression Released

#1
Space Lynx
Astronaut
Some progess is better than no progress :toast:
Posted on Reply
#2
aQi
This is not alarming because this should have been invented way before when powerful storage options started emerging or even before when powerful gpus were starting to hit market. I remember pc were compared to consoles and loading times were a setback.

So this API will not with previous game titles I presume.
Posted on Reply
#3
nguyen
Seems like I move to PCIe gen4 NVME just in time :D
Posted on Reply
#5
Mussels
Freshwater Moderator
This is what 1.0 needed to be even remotely worth it


Hopefully now we'll start seeing it baked into game engines - when unreal and unity get it, it'll get adopted by the masses at last
Xex360Supported games list?
Complete list is here:
Posted on Reply
#6
Scrizz
MusselsComplete list is here:
You left out the following:
Posted on Reply
#9
Wirko
Data will still have to go to system RAM first, albeit only in compressed form. Why can't that be omitted?
Posted on Reply
#10
MarsM4N
Microsoft is also promoting GDeflate, a new file compression format developed by NVIDIA ...
Let's hope it's not developed by Nvidia to be "optimized" for Nvidia. :D Always smells like.

Looking at Nvidia's spreadsheets, DirectStorage can make a huge difference. Also the sentence "The CPU shouldn’t become the bottleneck that holds back the I/O subsystem." is interesting. Sounds like DirectStorage optimized games will even run great on lower end CPU's.


I am also wondering, will it also make better game compression possible? File sizes getting really out of hand, and SSD's quickly full with 100+GB installers.
Posted on Reply
#11
Toss
woah, I can spare second or two for loading. Such stupid direction whole pc gaming is heading i cant...
Posted on Reply
#12
Wirko
nguyenSeems like I move to PCIe gen4 NVME just in time :D
Sure it doesn't hurt but you're only going to enjoy its full speed when you're doing large sequential transfers, preferably with QD much larger than 1. Loading game assets doesn't seem to fit that description very well, I think.
DS will benefit those with PCIe 3 SSDs as much as those with 4.0, and those who don't have the fastest CPU and fastest RAM will see most speedup.
Posted on Reply
#13
R00kie
Tosswoah, I can spare second or two for loading. Such stupid direction whole pc gaming is heading i cant...
Its not just for loading, its for streaming game assets on the fly as well
Posted on Reply
#14
Bomby569
we will still have to wait for game engines to support and eventually game releases to do so, still a long way from a reality
R00kieIts not just for loading, its for streaming game assets on the fly as well
it can be as much as 3 times faster so it is indeed a big deal, but not for existing games, so we wont even know what to expect when it eventually becomes a thing.
Posted on Reply
#15
lemonadesoda
I wonder if this is only useful as a parallel task, ie. loading resources whilst the CPU is busy with gameplay. Or if there are really performance gains to system memory Compress+Encrypt followed by Decrypt+Decompress. If the latter, then it would nicely improve system hibernation + wakeup speeds.
Posted on Reply
#16
Bwaze
R00kieIts not just for loading, its for streaming game assets on the fly as well
Console game developers can count on their platform having "DirectStorage", GPU capable of unpacking textures and fast SSD, and develop the game accordingly.

PC game developers have to plan that a good portion of the users will have a HDD even in a couple years time, and try to run the game on a potato GPU.

So the game would have to have packed and unpacked assets, and an option to load assets on the fly or with a pause?

I can't see this being widely adopted in a hurry.
Posted on Reply
#17
Valantar
Finally! Launching DS without its actually useful part has always baffled me to no end. Did MS actually expect anyone to adopt DS with before-the-fact CPU-based decompression, requiring hundreds of gigabytes of storage space for decompressed assets? With this we can finally get the benefits of DS in real life.
nguyenSeems like I move to PCIe gen4 NVME just in time :D
Absolutely no need for that - the difference in loading times will be unnoticeable, especially as this will mainly be used for on-the-fly asset streaming. Remember, if we're talking pure sequential speeds, a PCIe 3.0 drive can fill the entire VRAM of an RTX 4090 in 6.8 seconds (24GB/3.5GBps), while PCIe 4.0 theoretically halves that to 3.4s. On more common VRAM amounts these times are much lower and the difference much smaller - 8GB=2.3/1.1s, 12GB=3.4/1.7s, 16GB=4.6/2.3s. Are these noticeable differences? On a loading screen, no, especially when what you're coming from pre-DS is likely a 1-minute-plus loading time with CPU decompression. And of course if the workload is anything but perfectly sequential you'll see those transfer speeds start getting ever closer to each other.

The PCIe generation will be mostly meaningless for getting the benefits of DS - even a SATA SSD will likely see a major speed-up, though it'll still be slow on GPUs with large framebuffers (if DS supports SATA drives?).
BwazeConsole game developers can count on their platform having "DirectStorage", GPU capable of unpacking textures and fast SSD, and develop the game accordingly.

PC game developers have to plan that a good portion of the users will have a HDD even in a couple years time, and try to run the game on a potato GPU.

So the game would have to have packed and unpacked assets, and an option to load assets on the fly or with a pause?

I can't see this being widely adopted in a hurry.
What? You don't need separate assets for this vs. HDD-based loading, not whatsoever. The entire point is that whatever assets you have, they can be sent directly to the GPU for decompression and loading into VRAM as needed. Also, many games have been requiring SSD storage in their system requirements for years at this point - they still (typically) work on an HDD, but they're slow. This just continues that trend. As for "an option to load assets on the fly or with a pause" - just no. Asset streaming has been a widely adopted norm in game development for more than a decade at this point, and an SSD is in no way a requirement for it.
Posted on Reply
#18
Bomby569
BwazeConsole game developers can count on their platform having "DirectStorage", GPU capable of unpacking textures and fast SSD, and develop the game accordingly.

PC game developers have to plan that a good portion of the users will have a HDD even in a couple years time, and try to run the game on a potato GPU.

So the game would have to have packed and unpacked assets, and an option to load assets on the fly or with a pause?

I can't see this being widely adopted in a hurry.
a kind of direct storage is already used on both consoles (sony and nintendo) for a long time, even before they had ssd's, and even when they didn't had that fast "gpu's", you could even say it worked on consoles when they had literal potatos, and they did it exactly because they were such potatos.

sure there are very old pc's out there but this will not work on old games anyway
Posted on Reply
#19
Valantar
Bomby569a kind of direct storage is already used on both consoles (sony and nintendo) for a long time, even before they had ssd's, and even when they didn't had that fast "gpu's", you could even say it worked on consoles when they had literal potatos, and they did it exactly because they were such potatos.

sure there are very old pc's out there but this will not work on old games anyway
That's not true. Sure, consoles have had all kinds of setups for decompressing assets (and all kinds of other tasks) with dedicated accelerators and other hardware or software solutions, but none until this current generation have used GPUs for decompression in the way that DS implements - but both Xbox Series consoles and the PS5 remove decompression workloads from the CPU (XSX/S through DS; PS5 through dedicated decompression cores in the SSD controller IIRC).

As for older games, it's extremely unlikely for this to be patched into older titles anyway, so that's hardly relevant.
Posted on Reply
#20
nguyen
ValantarAbsolutely no need for that - the difference in loading times will be unnoticeable, especially as this will mainly be used for on-the-fly asset streaming. Remember, if we're talking pure sequential speeds, a PCIe 3.0 drive can fill the entire VRAM of an RTX 4090 in 6.8 seconds (24GB/3.5GBps), while PCIe 4.0 theoretically halves that to 3.4s. On more common VRAM amounts these times are much lower and the difference much smaller - 8GB=2.3/1.1s, 12GB=3.4/1.7s, 16GB=4.6/2.3s. Are these noticeable differences? On a loading screen, no, especially when what you're coming from pre-DS is likely a 1-minute-plus loading time with CPU decompression. And of course if the workload is anything but perfectly sequential you'll see those transfer speeds start getting ever closer to each other.

The PCIe generation will be mostly meaningless for getting the benefits of DS - even a SATA SSD will likely see a major speed-up, though it'll still be slow on GPUs with large framebuffers (if DS supports SATA drives?).
Oh well there is only 50usd difference between 2TB gen4 vs gen3 here (Kingston NV1 vs KC3000), the KC3000 just has way better specs (4x IOPS and 3x TBW) that 3s game loading time saving is icing on the cake :D.
Posted on Reply
#21
Valantar
nguyenOh well there is only 50usd difference between 2TB gen4 vs gen3 here (Kingston NV1 vs KC3000), the KC3000 just has way better specs (4x IOPS and 3x TBW) that 3s game loading time saving is icing on the cake :D.
Icing on a cake is noticeable ;)

But yeah, price differences are pretty small these days, mostly as there's no real reason for PCIe 4 drives to be more expensive. Marginally more complex controllers, but I don't even think they need better PCBs than their 3.0 counterparts, and other than that the onboard components are the same. I was just commenting on the irrelevance of "upgrading to PCIe 4" for DS overall :)
Posted on Reply
#22
nguyen
ValantarIcing on a cake is noticeable ;)

But yeah, price differences are pretty small these days, mostly as there's no real reason for PCIe 4 drives to be more expensive. Marginally more complex controllers, but I don't even think they need better PCBs than their 3.0 counterparts, and other than that the onboard components are the same. I was just commenting on the irrelevance of "upgrading to PCIe 4" for DS overall :)
Yeah I didn't upgrade, I built a new PC, the previous PC has 9900K + Z370 so there is no way I can upgrade to PCIe 4 on that :p
Posted on Reply
#23
Valantar
nguyenYeah I didn't upgrade, I built a new PC, the previous PC has 9900K + Z370 so there is no way I can upgrade to PCIe 4 on that :p
Hey, you could always get a PCIe 4 drive and run it at 3 speeds ;)
Posted on Reply
#24
Wirko
ValantarWhat? You don't need separate assets for this vs. HDD-based loading, not whatsoever. The entire point is that whatever assets you have, they can be sent directly to the GPU for decompression and loading into VRAM as needed
There's one more neglected feature of DS: decompress from memory. You can have a cache of compressed assets in RAM/VRAM/both, I don't know exactly.
Posted on Reply
#25
ThrashZone
Hi,
Nice to see the carrot on the stick upgrade feature finally see the light of day.

Missed the part where it stated only supported on xbox app though :laugh:
Posted on Reply
Add your own comment
Nov 23rd, 2024 00:43 EST change timezone

New Forum Posts

Popular Reviews

Controversial News Posts