News Microsoft DirectStorage 1.1 Now Available, AMD, Intel, Nvidia Ready

LastStanding

Prominent
May 5, 2022
75
27
560
The elephant in the room is, which devs would even consider patching their dated games.

Like Ubisoft, their EOL titles would never see DS e.g. AC: Origins water debacle.

R* iffy support for RDR2.

MK11 stuttering mess, etc.

DS1.1 seems just like another Mesh Shader, etc. broken promise that even MS devs refuses to utilize in their titles.
 

SonoraTechnical

Reputable
May 28, 2020
57
44
4,560
I wonder if Microsoft will patch it's own Flight Simulator software to use it. They are generally slow about adopting their own tech (e.g. how many microsoft titles were written for the Modern UI? )
 

DavidLejdar

Prominent
Sep 11, 2022
243
141
760
I wouldn't expect neither that many a game will simply get "patched" to make use of DirectStorage. And it also is a question of engine apparently.

On the other hand, the re-release of The Witcher 3 is supposedly coming with support for DirectStorage. There has been confirmation that i.e. Unreal Engine 5 will support DirectStorage. In particular modern consoles are hardware-ready for DirectStorage. And the list of DX12 games isn't exactly short:
https://www.pcgamingwiki.com/wiki/List_of_DirectX_12_games

So I wouldn't be surprised if even a number of older games will get an overhaul - that is when they do well for the publisher. In most older cases, it sure won't likely be considered worth the effort though. And someone playing older games due to hardware limitations, they wouldn't be able to make use of it anyhow when they are still e.g. loading games from a HDD - while upgrading that will load up older games "fast enough".
 
it will be up to individual games to implement DirectStorage to see the benefits of the API.
That means not only using the necessary API hooks, but also shipping games with assets packed using the new GDeflate algorithm. The vast backwards compatibility of GDeflate means that game devs can essentially hit the ground running here on DX12 games – anything worth running a new game on is going to support DirectStorage and GDeflate – but the fact that it involves game assets means that full DirectStorage support cannot be trivially added to existing games. Developers would need to redistribute (or otherwise recompress) game assets for GDeflate, which is certainly do-able, but would require gamers to re-download a large part of a game.
So gamers should plan on seeing DirectStorage 1.1 arrive as a feature in future games, rather than backported into existing games.
 

husker

Distinguished
Oct 2, 2009
1,208
221
19,670
"Remember, Direct Storage 1.1's headlining ability is accelerating game load times by as much as 40%, depending upon the game and PC hardware configuration. "
- Article


Anywhere you see the phrase "as much as" your B.S. radar should be blaring. Any store can sell one single item for 80% off and and claim a big sale where everything is "as much as" 80% off. Give me an average or a minimum to go along with that or it is meaningless.
 
"Remember, Direct Storage 1.1's headlining ability is accelerating game load times by as much as 40%, depending upon the game and PC hardware configuration. "
- Article


Anywhere you see the phrase "as much as" your B.S. radar should be blaring. Any store can sell one single item for 80% off and and claim a big sale where everything is "as much as" 80% off. Give me an average or a minimum to go along with that or it is meaningless.
it will depend on your drive speed, pcie bandwith speed, maybe reBAR?, and gpu decompression speed
the usual thing to consider
 

InvalidError

Titan
Moderator
Anywhere you see the phrase "as much as" your B.S. radar should be blaring. Any store can sell one single item for 80% off and and claim a big sale where everything is "as much as" 80% off. Give me an average or a minimum to go along with that or it is meaningless.
Microsoft has zero control over how developers implement the feature if they choose to implement it at all, so the improvement can be anywhere from actually regressing to hypothetically as much as tripling based on GDeflate benchmarks.

Not much different from how CPU designers throwing more cores, cache, etc. at their designs usually yields a far less than linear gains in most people's everyday uses because most everyday uses do not rely exclusively on any one single miraculous performance-tripling aspect of the overall design. I upgraded from an i5-3470 to an i5-11400, my new CPU is more than twice as fast but for most everyday uses, I'm not sure I'd be able to tell the difference apart from games load screens being a few seconds quicker.
 

umeng2002_2

Commendable
Jan 10, 2022
186
169
1,770
The demo is out to try. I got between 7 and 8.5 GB/s over my PCI-e gen 3 SSD with 1% CPU utilization.

Without GPU decompression, I was at 5 GB/s with 100% CPU usage.
 
  • Like
Reactions: bit_user

watzupken

Reputable
Mar 16, 2020
1,022
516
6,070
To me, there is 0 benefit for the game developers to implement this. The benefit is more for the end users like you and me, but it is more work for the game developer. So if given an option whether to implement or not, you can expect slow or no pick up. Nowadays, game developers don't just need to create a game, but they need to optimize for a bunch of value added services like DLSS, FSR, etc... In the case of DLSS/FSR/XeSS, it may help improve sales because having more people with weaker graphics now being able to game may attract more sales. Adding another optimization to their plate with no sponsorship/ help, and low impact to sales is not going to improve the pickup rate. In any case, people who want to play a certain title will buy the game regardless of whether it supports Direct Storage. Having faster loading time to me is nice to have.
 

InvalidError

Titan
Moderator
To me, there is 0 benefit for the game developers to implement this. The benefit is more for the end users like you and me, but it is more work for the game developer. So if given an option whether to implement or not, you can expect slow or no pick up.
The same could be said if all QoL and visual quality improvements: they only provide benefits to the end-users while greatly increasing the developers' workload. Why do they do it? Because it is necessary to meet rising consumer expectations. People get accustomed to shorter load times, developers who fail to improve their non-negligible load times will get blasted.
 

umeng2002_2

Commendable
Jan 10, 2022
186
169
1,770
To me, there is 0 benefit for the game developers to implement this. The benefit is more for the end users like you and me, but it is more work for the game developer. So if given an option whether to implement or not, you can expect slow or no pick up. Nowadays, game developers don't just need to create a game, but they need to optimize for a bunch of value added services like DLSS, FSR, etc... In the case of DLSS/FSR/XeSS, it may help improve sales because having more people with weaker graphics now being able to game may attract more sales. Adding another optimization to their plate with no sponsorship/ help, and low impact to sales is not going to improve the pickup rate. In any case, people who want to play a certain title will buy the game regardless of whether it supports Direct Storage. Having faster loading time to me is nice to have.

Absolutely not. Game devs are striving for seamless experiences with no corridors or "sliding through cave cracks" to mask loading times. This allows them NOT have to optimize for loading areas. I think this will revolutionize gaming.
 
Absolutely not. Game devs are striving for seamless experiences with no corridors or "sliding through cave cracks" to mask loading times. This allows them NOT have to optimize for loading areas. I think this will revolutionize gaming.
i dont think those "sliding through cave cracks" would disappear... take a look at it this way, using GPU for decompressing zip files (deflate is basicaly pkzip), this uses cuda/shaders, during this extraction process shader cores would get tanked hard, like on mine gpu when i do something on cuda, i hit power target at much lower gpu clock then when gaming...and if you still need shaders for some eyecandy effect alongside it, well there would still need to be some "slide through cave crack", albeit much shorter

will see how it gets implemented in openworld games
 

LuxZg

Distinguished
Dec 29, 2007
225
42
18,710
well there would still need to be some "slide through cave crack", albeit much shorter

will see how it gets implemented in openworld games

If you can fill VRAM in 3 sec, then game can swap all assets while you press the door-knob, or if you're traveling it can keep flushing old and streaming new data as you go, it's not like you just pop on the opposite side of map. And if game uses something like teleporting animation can just be a blink of light for a short moment, no longer "you are being teleported" for 20 seconds. Loading lasting MUCH shorter can be masked in many unobtrusive ways. Literally blink and you've missed it.
 

umeng2002_2

Commendable
Jan 10, 2022
186
169
1,770
Yes, it does take a ton of GPU resources, but devs can balance it out or simply mask it quicker. One thing you have to remember about the current consoles is that they also have DEDICATED hardware decompression units too. Meanwhile on the PC, some execution cores need to be set aside for this... or just blast the GPU to 100% for a half second.

Again, there are many games that don't throw enough CPU threads at decompression even if you're running a 16-core CPU. This just gives devs another option to get assets in fast without requiring people to have a $500+ CPU.
 

bit_user

Polypheme
Ambassador
Not having followed the DirectStorage saga, I was disappointed to see it's still being staged through host memory.

aAMustubExpwbPkcMHRt6T.jpg

That means an extra trip across PCIe and burning main memory bandwidth, though I guess the problem is that you can never guarantee that both the SSD and GPU are on the same segment. It would be nice if it could dynamically detect whether it could DMA directly into GPU memory and only stage in main memory as a fallback. That would also cut latency and maybe a little stuttering.
 

InvalidError

Titan
Moderator
That means an extra trip across PCIe and burning main memory bandwidth, though I guess the problem is that you can never guarantee that both the SSD and GPU are on the same segment.
What extra trip through PCIe? Regardless of whether IO goes directly from SSD to GPU or passes through RAM, it still only passes one time through the NVMe interface and one time through the GPU interface - got to pass through the CPU either way.

I suspect the main reason for staging things in system memory is to avoid having to "teach" GPUs how to read the file system and all of the access control that goes with it. You don't want a rogue GPU/shader to thrash your SSDs. It also lets compressed data be cached in system memory as usual for the next time it gets used instead of having to be reloaded from SSD, which eliminates the NVMe interface altogether as long as you have enough spare system memory to do so. With system memory being so cheap these days, most somewhat competitive gamers with a little spare change should go with 32GB.
 
Last edited:
well before directstorage, compressed data was stored in system ram, then cpu had to decompress it and send it to gpu vram
now it its still stored in sytem ram (compressed), where cpu gets skipped and it gets sent compressed directly to vram where gpu will decompress it
and it also scraps old slow storage api (based on old platter HDD drives)to utilise nvme to its full potential

so gpu gets data fast, and doesnt have to wait that long before rendering
 

bit_user

Polypheme
Ambassador
What extra trip through PCIe? Regardless of whether IO goes directly from SSD to GPU or passes through RAM, it still only passes one time through the NVMe interface and one time through the GPU interface - got to pass through the CPU either way.
True. If they're both direct-connected to the CPU, then there are no unnecessary trips over PCIe.

I suspect the main reason for staging things in system memory is to avoid having to "teach" GPUs how to read the file system
No, you would have the CPU initiating the reads from the SSD, but you'd want it to write the data directly to GPU memory. That's if you could be sure they were both on the same switch segment.

Of course, if the data is stored in non-contiguous filesystem blocks, then there'd have to be multiple reads for a single asset. That's fine, as long as the GPU knew when the final read was complete.

and all of the access control that goes with it. You don't want a rogue GPU/shader to thrash your SSDs.
Right. For safety, security, and simplicity, the CPU should initiate the reads - not the GPU.

It also lets compressed data be cached in system memory as usual for the next time it gets used instead of having to be reloaded from SSD, which eliminates the NVMe interface altogether
If the SSD is fast enough to keep up with the game engine, then I think you don't really need to cache the assets in system RAM. However, if you did, then you could always move it from GPU memory to system memory, once the GPU ceases to need it (or has decompressed it, if it was compressed).

A significant disadvantage of having the CPU forwarding data from the NVMe drive to the GPU is the interrupt & task-switch latency of the CPU. DirectStorage should be all about getting rid of such overhead!
 
it will be up to individual games to implement DirectStorage to see the benefits of the API.
That means not only using the necessary API hooks, but also shipping games with assets packed using the new GDeflate algorithm. The vast backwards compatibility of GDeflate means that game devs can essentially hit the ground running here on DX12 games – anything worth running a new game on is going to support DirectStorage and GDeflate – but the fact that it involves game assets means that full DirectStorage support cannot be trivially added to existing games. Developers would need to redistribute (or otherwise recompress) game assets for GDeflate, which is certainly do-able, but would require gamers to re-download a large part of a game.
So gamers should plan on seeing DirectStorage 1.1 arrive as a feature in future games, rather than backported into existing games.
Or they will release small tools that will allow the end user to do the compression on their own systems, even on a crap system it would probably take less time than downloading everything again, well depends on how good the compression is I guess.

Yeah companies usually don't throw money after old games that already ebbed in sales. On the other hand if a good boost in loading speed could help new sales of an old game they will consider it. Also with how high the amount of remakes is lately they could throw this in with all the other new stuff when making one.