Microsoft's DirectStorage for PC will work with PCIe 3.0 SSDs

Shawn Knight

Posts: 13,073   +130
Staff member
Why it matters: Microsoft during its recent Game Stack Live (GSL) 2021 event confirmed that its upcoming DirectStorage API for the PC will be compatible with PCIe 3.0 NVMe SSDs. That's important considering PCIe 3.0 drives are much more plentiful than their newer counterparts and PCIe 4.0 drives are limited to just a handful of newer platforms.

Up to this point, it was widely assumed that the tech would only work with the latest PCIe 4.0 drives. The tech won’t work with SATA drives, however, as that interface is simply too slow to achieve what Microsoft wants to accomplish.

As Redmond highlighted during its presentation, the DirectStorage API was originally created for Xbox Series X / S. On the PC, it’ll help maximize the performance of local storage by implementing a more efficient link between NVMe SSDs and the GPU.

Also read: What's New in DirectX 12? Understanding DirectML, DirectX Raytracing and DirectStorage

As it stands today, existing APIs treat each I/O request individually and in series. DirectStorage APIs, however, allow developers to bundle I/O requests into batches that can be handled in parallel. In short, it’ll result in faster load times and allow games to be more detailed and expansive than ever.

Microsoft’s DirectStorage talk at GSL dove deep into how the tech works and how devs can get on board with it. We’ve embedded the video above in case you missed it live.

Image credit: Christian Wiediger

Permalink to story.

 

neeyik

Posts: 1,839   +2,151
Staff member
Yeah, and PCIe 4.0 is simply too fast for what Microsoft wants.

This is just wrong.
It's less about speed, when it comes to why SATA isn't being included with DirectStorage, and more the fact that the I/O command queue is serial, and restricted to 32 entries. NVMe, regardless as to whether it's using PCIe 3.0 or 4.0, allows for up to 64,000 concurrent queues, each with up to 64,000 commands. In practice, this is far more than what a typical NAND flash controller will support, but it does mean that the CPU is freed from having to micromanage the command queue, leaving it free to do other tasks.
 

maxxcool7421

Posts: 14   +35
It's less about speed, when it comes to why SATA isn't being included with DirectStorage, and more the fact that the I/O command queue is serial, and restricted to 32 entries. NVMe, regardless as to whether it's using PCIe 3.0 or 4.0, allows for up to 64,000 concurrent queues, each with up to 64,000 commands. In practice, this is far more than what a typical NAND flash controller will support, but it does mean that the CPU is freed from having to micromanage the command queue, leaving it free to do other tasks.

^^ THIS
 

Aranarth

Posts: 72   +61
Yeah, and PCIe 4.0 is simply too fast for what Microsoft wants.

This is just wrong.
I read the text and I'm watching the video and no where does it say pcie 4.0 is too fast, infact the idea is that because you are offloading the decompression to the gpu you can suck data off the nvme drive as fast as it can give it.

Case in point at the 23 minute mark.
This new tech already saturates current NVME ssd's.
This means that the technology can already go FASTER than current pcie 4.0!
 
Last edited:

theruck

Posts: 289   +133
So game loading times is a topic in microsoft now
what about file copy times over their smb protocol and the estimations of ending shown on the screen...
 

Impudicus

Posts: 235   +221
I'm just waiting for the to put a m.2 Nvme slot directly on the GPU. Install your game there and boom. Maybe if game developers allow for some kind of hybrid install that puts all game textures on the GPU drive, and the other info elsewhere.