Microsoft to Bring DirectStorage API to Windows in 2021: Speeding Up Gaming With NVMe SSDs

(Image credit: Microsoft)

Microsoft this week said that it would bring preview of its DirectStorage application programming interface that powers the company’s Xbox Velocity Architecture to Windows 10 developers in 2021. The API is designed to speed up game loading times and improve performance of games by eliminating storage API-related bottlenecks and reducing CPU involvement, but on a client PC it can do much more than that. Nvidia has also adopted the technology, branded Nvidia RTX IO, for its Ampere graphics cards. 

Expensive I/O Requests 

Latest Videos FromTom's Hardware
Anton Shilov
Contributing Writer

Anton Shilov is a contributing writer at Tom’s Hardware. Over the past couple of decades, he has covered everything from CPUs and GPUs to supercomputers and from modern process technologies and latest fab tools to high-tech industry trends.

  • gggplaya
    And just like that PCIe 4.0 is a must have when building any new PC today.

    No more arguing about whether or not a GPU saturates the bus, or storage loading times are any faster.
    Reply
  • sizzling
    gggplaya said:
    And just like that PCIe 4.0 is a must have when building any new PC today.

    No more arguing about whether or not a GPU saturates the bus, or storage loading times are any faster.
    That’s a big assumption
    Reply
  • InvalidError
    "Existing storage APIs require the application to manage its I/O requests sequentially"

    Windows has had an async IO API for a long time, just too clunky to bother with unless you absolutely need to. I'm guessing most of what DirectStorage does is wrap it in a more convenient package, perhaps with added zero-copy capabilities.
    Reply
  • spongiemaster
    gggplaya said:
    And just like that PCIe 4.0 is a must have when building any new PC today.

    No more arguing about whether or not a GPU saturates the bus, or storage loading times are any faster.
    Never use version 1.0 of anything from Microsoft. We're a few years away from this being a have to have feature.
    Reply
  • AnimeMania
    This sounds like an Anti-Virus Security nightmare.
    Reply
  • TerryLaze
    InvalidError said:
    "Existing storage APIs require the application to manage its I/O requests sequentially"

    Windows has had an async IO API for a long time, just too clunky to bother with unless you absolutely need to. I'm guessing most of what DirectStorage does is wrap it in a more convenient package, perhaps with added zero-copy capabilities.
    That's still sequential it's just on a second thread and doesn't have to wait to be called by the main thread.
    It still has to do all this :" submit the request, wait for it to complete, handle its completion, move on to another request. "
    The new API will probably just dump a whole bunch of memory addresses to the nvme controller and that will just copy them there with the firmware.
    Reply
  • gggplaya
    I think that developers will take advantage of this API, since it's nearly the same or could be the same as what will be used on the Xbox Series X.

    We'll see larger open worlds and levels with more objects and detail. Textures and Objects can load in as you explore the level from room to room. Some games will take advantage of it, but not all. So for me, it's a must have, which I do have because I have an X570 and Ryzen 3900x. I just need to upgrade my NVMe drive from 3.0 to 4.0.
    Reply
  • colson79
    It's about time. The next generation of consoles finally moving to SSD's is finally going to do something to help PC gamers. We have had fast SSD's in PC's for a long time but we were still stuck with crappy load times because most games are ports from consoles targeting poor spindle drives. Glad to see the change happening.
    Reply
  • nofanneeded
    I dont get it ... I understand that such way of storing and retrieving data was being used internally by the software devs themselves to lower load times . that is using blocks that contain many smaller sized files and load them to memory then inside the memory unpack them instead of getting the small files directly from SSD or even HDD ...

    This is old programming method ... well known already. how is MS making anything different here ?
    Reply
  • TerryLaze
    nofanneeded said:
    This is old programming method ... well known already. how is intel making anything different here ?
    Microsoft not intel.
    And if you could do this with one block until now you can do it with a lot of blocks now at the same time and with very little cpu power ,at least that's how it sounds.
    Reply