• Hey, guest user. Hope you're enjoying NeoGAF! Have you considered registering for an account? Come join us and add your take to the daily discourse.

DirectStorage API Now Available on PC

1)Does it need PCIE 5?
2)Does it need Read/write/compressed/uncompressed NVMe SSD speed to be between 2.5GB/sec to 5 GB/sec similar to the speed of XsX and PS5 SSD?
3)Is SFS streaming part of Direct Storage API?
4) How does Windows 11 Directstorage API compare to Windows 10 DirectstorageAPI?
 
Last edited:

Hoddi

Member
nlrbi2Y.png

CvlD5G3.png
 

Black_Stride

do not tempt fate do not contrain Wonder Woman's thighs do not do not
1)Does it need PCIE 5?
2)Does it need Read/write/compressed/uncompressed NVMe SSD speed to be between 2.5GB/sec to 5 GB/sec similar to the speed of XsX and PS5 SSD?
3)Is SFS streaming part of Direct Storage API?
4) How does Windows 11 Directstorage API compare to Windows 10 DirectstorageAPI?

Doesnt need PCIE5....there are no consumer PCIE5 drives.
It will read from anything, even a slow ass HDD.
No.
Cant confirm but supposedly its more efficient on Win11 than on Win10.
 

Buggy Loop

Member
Finally.

So now the waiting game for the first supported title. I hope Halo infinite + ray tracing patch will include DirectStorage on top of it. Would make sense to have a flag title like that to showcase the tech.
 

rofif

Can’t Git Gud
Years of owning nvme ssds... and only now there is hope anything will start using it.
Until now, normal sata ssd was just as good as highest end nvme when it comes to gaming and normal use.
NVME only being faster with copying files for full 50gb until it dies to crawl due to running out of cache and heat
 

Tarin02543

Member
1)Does it need PCIE 5?
2)Does it need Read/write/compressed/uncompressed NVMe SSD speed to be between 2.5GB/sec to 5 GB/sec similar to the speed of XsX and PS5 SSD?
3)Is SFS streaming part of Direct Storage API?
4) How does Windows 11 Directstorage API compare to Windows 10 DirectstorageAPI?

5) is RTX IO required?
 

JackMcGunns

Member
Yes when they finally have it shipping in games. This is taking a long time. Since Forspoken will be using it, I would be very disappointed if Starfield and Redfall are not using it this year with them being first party games.


I heard Forspoken will be the first title to use it on Series X. Have any other titles been announced? I'm guessing going forward it will be the norm, but I would like to know. Hopefully most titles releasing by years end and beyond.
 
Last edited:

JackMcGunns

Member
Years of owning nvme ssds... and only now there is hope anything will start using it.
Until now, normal sata ssd was just as good as highest end nvme when it comes to gaming and normal use.
NVME only being faster with copying files for full 50gb until it dies to crawl due to running out of cache and heat


Gotta thank consoles for that, they typically push tech forward even if the master race doesn't believe it lol.
 

Topher

Gold Member
No it isn't. The video I posted with Microsoft employee explaining Direct Storage explains what the Xbox is currently doing. CPU decompression with assistance from hardware accelerators. There is no game currently on an Xbox or PC that has the GPU assigned to do decompression.

Huh? I thought PCs use GPU because PC does not have dedicated hardware like Xbox does. Do you have a timestamp for the portion of the video referencing Xbox?

Edit: Ok....I don't think you are correct here. Look at this part of the video:



He explicitly states that GPU is being used because PC does not have dedicated hardware like Xbox does.
 
Last edited:

M1chl

Currently Gif and Meme Champion
Huh? I thought PCs use GPU because PC does not have dedicated hardware like Xbox does. Do you have a timestamp for the portion of the video referencing Xbox?
Itś just an API, for the OS layer, you get the "tunnel" to do it, however it does not have Xbox functionality, on system itself. Also it's already have the "RTX IO" on latest alpha branch of drivers which uses this API to fetch data and later it works with them. It's just a OS implementation of handling the data streams. AMD is going to have it's own solution. PC does not have what Xbox customization. Look at this article: Xbox Velocity Architecture: A Closer Look at the Next-Gen Tech Driving Gaming Innovation Forward on Xbox Series X - Xbox Wire

Clearly the Xbox velocity means more than just a direct storage api.

It's up to the devs how to use this data, however it means that it lowers the CPU overhead quite a lot and especially the nVidia solution works quite well (I am in the test group, due to me being close to cool people).
 

Md Ray

Member
Huh? I thought PCs use GPU because PC does not have dedicated hardware like Xbox does. Do you have a timestamp for the portion of the video referencing Xbox?

Edit: Ok....I don't think you are correct here. Look at this part of the video:



He explicitly states that GPU is being used because PC does not have dedicated hardware like Xbox does.

Yeah, looks like Mister Wolf Mister Wolf misunderstood what the MS employee was explaining in that vid.
 

Topher

Gold Member
Itś just an API, for the OS layer, you get the "tunnel" to do it, however it does not have Xbox functionality, on system itself. Also it's already have the "RTX IO" on latest alpha branch of drivers which uses this API to fetch data and later it works with them. It's just a OS implementation of handling the data streams. AMD is going to have it's own solution. PC does not have what Xbox customization. Look at this article: Xbox Velocity Architecture: A Closer Look at the Next-Gen Tech Driving Gaming Innovation Forward on Xbox Series X - Xbox Wire

Clearly the Xbox velocity means more than just a direct storage api.

It's up to the devs how to use this data, however it means that it lowers the CPU overhead quite a lot and especially the nVidia solution works quite well (I am in the test group, due to me being close to cool people).

Right, Velocity Architecture is specific to Xbox and includes DirectStorage, the hardware decompression, the NVMe drive, etc. Devs have been able to utilize this since Xbox launched is the point I was making.
 

M1chl

Currently Gif and Meme Champion
Right, Velocity Architecture is specific to Xbox and includes DirectStorage, the hardware decompression, the NVMe drive, etc. Devs have been able to utilize this since Xbox launched is the point I was making.
I probably misunderstood, I am all in all about war recently, so jumping around thread does not really helps.
 

Topher

Gold Member
Not sure if this has been posted anywhere, but AMD announced support for DirectStorage as well.

AMD is proud to announce our support of Microsoft® and its release of DirectStorage. The Microsoft DirectStorage SDK is now available for download. We encourage developers to download our latest drivers to ensure optimal support.

DirectStorage

DirectStorage API promises to help developers improve the gaming experience by providing an optimized file I/O and GPU resource loading API designed for modern hardware. Due to our unique position of providing CPU, GPU, and chipsets, AMD is collaborating closely with Microsoft, storage hardware vendors such as Phison, and game studios to ensure that DirectStorage is optimized for our entire hardware and software stack.
"AMD has a long history of bridging technology disciplines and Phison is thrilled to be able to help improve gaming by sharing our knowledge of SSD’s. Here at Phison we are aggressively pursuing the best possible technology to increase the storage bandwidth with first-to-market Gen4 in 2019 and now pushing productization of Gen5 in 2022.”

Sebastien Jean
Phison CTO
The DirectStorage API encourages developers to write more optimal code for both Windows 11 and Windows 10. It simplifies the process of batching file read requests, asynchronous transfer of resources to the GPU or CPU, and prioritization of that I/O on its way to its destination.
We believe that DirectStorage has the potential to change PC gaming. With it, developers have the capability to significantly reduce load times on PC.
DirectStorage offers the following features to improve I/O performance in games:

Batching I/O

Modern storage devices, such as NVMe® are optimized for multiple simultaneous workloads to maintain peak throughput. Traditional serialized file I/O is no longer aligned with modern gaming and just-in-time rendering. DirectStorage encourages batching multiple requests simultaneously with a simplified API to maximize throughput.

Asynchronous execution

Asynchronous I/O can be difficult to implement correctly with traditional storage APIs, and most software relies on serialized I/O. DirectStorage simplifies the task of asynchronous queuing, dispatch, and notification of I/O requests and transfer. It should now be much easier for titles to use an optimal path to loading data. While DirectStorage handles the loading of resources, programs can perform other tasks and make additional I/O requests.

Prioritization

Providing developers with the ability to prioritize requests ensures that players have the smoothest experience while loading and streaming in assets to create a more seamless user experience.

Call to Action for developers

While DirectStorage helps developers utilize the hardware, developers are responsible for ensuring their data can be loaded with minimal CPU intervention to minimize load time and maximize streaming performance. When storage performance was the bottleneck to loading performance, CPU utilization time from asset loading was considered less important because it was much smaller than the storage transfer time. Today, we find ourselves in the opposite situation. Code which processes assets at load time is now the most common bottleneck.
Developers should organize their data to minimize the CPU workload required to load data. Furthermore, developers should reduce the amount of data they load at game startup and rely on the performance of fast storage devices to stream in the minimal set of assets required. Fewer assets loaded means less data transferred, lower memory consumption, and lower chances of over-subscribing memory.

How can developers improve their engines and games?

  • Reduce read->read dependencies of data. Ensure the title knows exactly what assets are required for loading a level and its assets ahead of time. For example, instead of loading each asset to find its dependencies, store the asset dependency data separately so that the asset does not require additional parsing to discover what it needs to be loaded.
  • Save graphics assets to disk in the layout returned by ID3D12Device::GetCopyableFootprints to prevent additional copies of data. This is device invariant and is designed to work across vendors.
  • Use multiple threads for loading assets and interacting with the DirectStorage API. Processing loading on a single thread will create a performance bottleneck.
Stay tuned for a forthcoming AMD demo and a follow-up blog post with an example of how to achieve these goals and integrate DirectStorage.

 

Mister Wolf

Member
Huh? I thought PCs use GPU because PC does not have dedicated hardware like Xbox does. Do you have a timestamp for the portion of the video referencing Xbox?

Edit: Ok....I don't think you are correct here. Look at this part of the video:



He explicitly states that GPU is being used because PC does not have dedicated hardware like Xbox does.



"Microsoft focused specifically on texture compression, reasoning that textures account for the largest volume of data that games need to read and decompress. They developed a new texture compression algorithm and dubbed it BCPack in a slight departure from their existing DirectX naming conventions for texture compression methods already supported by GPUs."

"Microsoft's hardware decompression is apparently only for texture data."


"The CPU time saved by these decompression units sounds astounding: the equivalent of about 9 Zen 2 CPU cores for the PS5, and about 5 for the Xbox Series X."

So you believe they will maintain this system even when Direct Storage's new compression/decompression methods become available which are designed to decompress with the GPU? GPUs that are capable of this in the Series X/S. Methods that he says are not ready yet in the video.
 
Last edited:

Topher

Gold Member

"Microsoft focused specifically on texture compression, reasoning that textures account for the largest volume of data that games need to read and decompress. They developed a new texture compression algorithm and dubbed it BCPack in a slight departure from their existing DirectX naming conventions for texture compression methods already supported by GPUs."

"Microsoft's hardware decompression is apparently only for texture data."


"The CPU time saved by these decompression units sounds astounding: the equivalent of about 9 Zen 2 CPU cores for the PS5, and about 5 for the Xbox Series X."

So you believe they will maintain this system even when Direct Storage's new compression/decompression methods become available which are designed to decompress with the GPU? GPUs that are capable of this in the Series X/S. Methods that he says are not ready yet in the video.

I'm saying Velocity Architecture (including DirectStorage which was introduced with Xbox Series X|S) has been in place since launch and has already been used in games. Whether or not GPU methods become the more preferred method for compression/decompression in Xbox, I have no idea. If it works better than the dedicated hardware already in place then I don't see why not.

Microsoft said that BCPack specifically was used for texture data, not the entire hardware decompression solution.

"With hardware accelerated support for both the industry standard LZ decompressor as well as a brand new, proprietary algorithm specifically designed for texture data named BCPack, Xbox Series X provides the best of both worlds for developers to achieve massive savings with no loss in quality or performance. As texture data comprises a significant portion of the total overall size of a game, having a purpose built algorithm optimized for texture data in addition to the general purpose LZ decompressor, both can be used in parallel to reduce the overall size of a game package. "


Also, in the same video, the guy talks like utilizing the GPU is a stop-gap measure until dedicated hardware is developed for PCs like it has been in consoles:

timestamped
 
Last edited:

Mister Wolf

Member
I'm saying Velocity Architecture (including DirectStorage which was introduced with Xbox Series X|S) has been in place since launch and has already been used in games. Whether or not GPU methods become the more preferred method for compression/decompression in Xbox, I have no idea. If it works better than the dedicated hardware already in place then I don't see why not.

Microsoft said that BCPack specifically was used for texture data, not the entire hardware decompression solution.

"With hardware accelerated support for both the industry standard LZ decompressor as well as a brand new, proprietary algorithm specifically designed for texture data named BCPack, Xbox Series X provides the best of both worlds for developers to achieve massive savings with no loss in quality or performance. As texture data comprises a significant portion of the total overall size of a game, having a purpose built algorithm optimized for texture data in addition to the general purpose LZ decompressor, both can be used in parallel to reduce the overall size of a game package. "


I believe once available you will see the Series consoles use the exact compression and decompression methods as PC for the GPU. Whether that will be due to convenience of the developers or better performance we shall see.
 
Last edited:

Topher

Gold Member
I believe once available you will see the Series consoles use the exact compression and decompression methods as PC for the GPU. Whether that will be do to convenience of the developers or better performance we shall see.

Has there been any discussion about what kind of pressure this will put on the GPU? It will certainly eat up some resources, I would think. So why put that pressure on the GPU and ignore dedicated hardware in place?
 

reksveks

Member
Also, in the same video, the guy talks like utilizing the GPU is a stop-gap measure until dedicated hardware is developed for PCs like it has been in consoles:
GPU makers will probably just integrate a fixed piece of hardware for this, right?

Has there been any discussion about what kind of pressure this will put on the GPU? It will certainly eat up some resources, I would think. So why put that pressure on the GPU and ignore dedicated hardware in place?

Unfortunately there is a really unhelpful graph here trying to highlight how much more efficient a RTX GPU is at handling that much data.


I think it would be interested to see if the next gen of RTX cards include anything fixed and optimized for RTX IO.
 

Sentenza

Member
Very cool. The one area where even the top end PCs lag behind consoles.
Eh. Just nominally, it's mostly true if you buy into the marketing hype.
In practical terms nine times out of ten in a real use scenario you are going to get better performances and loading times on a NVMe on PC than on any of the two major consoles, no matter how "optimized" they may be for the task.
 

Topher

Gold Member
GPU makers will probably just integrate a fixed piece of hardware for this, right?

I would think so. Only other place would be on the motherboard.

Unfortunately there is a really unhelpful graph here trying to highlight how much more efficient a RTX GPU is at handling that much data.


I think it would be interested to see if the next gen of RTX cards include anything fixed and optimized for RTX IO.

I'd love to see some non-marketing data on that. I wouldn't doubt it if GPUs were able to handle it more efficiently and that is where this dedicated hardware ultimately resides. For consoles, though, if that would have been an option for their custom GPUs, why not do that? They didn't have to wait for PC to catch up first.

Eh. Just nominally, it's mostly true if you buy into the marketing hype.
In practical terms nine times out of ten in a real use scenario you are going to get better performances and loading times on a NVMe on PC than on any of the two major consoles, no matter how "optimized" they may be for the task.

That hasn't been my experience. I can load up Halo Infinite and Forza Horizon 5 much faster on my XSX than I can on my PC with NVMe drives. That's anecdotal though. I may google this a bit later and see if there is any data on console vs PC loading times. But I do know that PC bottlenecks have prevented NVMe from really being much faster than slower SATA drives on PC. This is why DirectStorage, RTX IO, and such are being developed. Remove the bottlenecks and achieve the load times like those optimized for it on console are achieving.
 
Last edited:

Md Ray

Member
I heard Forspoken will be the first title to use it on Series X. Have any other titles been announced? I'm guessing going forward it will be the norm, but I would like to know. Hopefully most titles releasing by years end and beyond.
Actually, there are AAA titles that use DStorage on Series consoles today. Forspoken will be the first title on PC to use DStorage.
 
Last edited:
Is Sampler Feedback Streaming (SFS) part of DirectStorageAPI for PC?

WIll NvME SSD manufactures have to build NvME SSD's to be DirectStorageAPI compliant to include SFS? Same way GPU manufactures state "Direct X 12 Ultimate Complaint"

I think future PC's utilizing: DDR5 RAM, DirectstorageAPI with SFS, 3D Cache, Infinity Cache, , PCIE5 is gonna be bonkers uplift on contributing to performance starting late 2022 early 2023
 

sinnergy

Member
Is Sampler Feedback Streaming (SFS) part of DirectStorageAPI for PC?

WIll NvME SSD manufactures have to build NvME SSD's to be DirectStorageAPI compliant to include SFS? Same way GPU manufactures state "Direct X 12 Ultimate Complaint"

I think future PC's utilizing: DDR5 RAM, DirectstorageAPI with SFS, 3D Cache, Infinity Cache, , PCIE5 is gonna be bonkers uplift on contributing to performance starting late 2022 early 2023
I thought this was a specific Xbox enhancement.
 
That article is from 2020.

Do GPU's, NVMeSSD's, CPU's, need to be manufactured specifically around SFS? Or is it Just a software thing?

Im thinking its more GPU's, NvME SSD's that must be manufactured to meet SFS requirements?
 

CamHostage

Member
Actually, there are AAA titles that use DStorage on Series consoles today. Forspoken will be the first title on PC to use DStorage.

Eh, maybe, but there's nothing locked in about Forspoken being a flagbearer for DirectStorage.

It was the first game where the developers spoke of DStorage usage, through Square's GDC tech talk this year, but I don't know of any exclusivity contract or special deal between MS and Square on this. (Square spoke of AMD FidelityFX Super Resolution at that same session, but Super Res games are already on the market.) People made a big deal of, "OMG, they said DirectStorage is in their game!", and technically by the way the release calendar will shake out Forspoken looks to be the first AAA game to come out with that DirectStorage is integrated into (and it may turn out to be a nice first showcase for what DirectStorage can do for PC gaming,) but that's more timing than any special partnership or feature deal, and there's no stopping some other game we're not aware of to come out before Forspoken with DirectStorage integrated without the same fanfare.
 
Last edited:

Black_Stride

do not tempt fate do not contrain Wonder Woman's thighs do not do not


Looking good.

Devs seriously need to start using DirectStorage especially in open world games that have fast travel.
20GB/s on the Gen4.....nearly 28GB/s on the Gen5.
Mate.


But on an aside......why are there near no games that have actually used the SSDs in the nextgen consoles for anything other than "faster loading".......I thought we were gonna get all new experiences or some shit?
 

Spyxos

Gold Member
Devs seriously need to start using DirectStorage especially in open world games that have fast travel.
20GB/s on the Gen4.....nearly 28GB/s on the Gen5.
Mate.


But on an aside......why are there near no games that have actually used the SSDs in the nextgen consoles for anything other than "faster loading".......I thought we were gonna get all new experiences or some shit?
Most of the games so far have been crossgen. From now on it should get interesting. And Ratchet & Clank did something with it.
 
Last edited:
Top Bottom