DirectStorage 1.2 is now available, but it is still a niche technology on PC
Microsoft announced the general availability of DirectStorage 1.2 on its DirectX Developer Blog this week. DirectStorage promises reduced game loading times, provided that games implement the technology and PCs use very fast NVME storage solutions.
Microsoft announced the integration of DirectStorage for Windows 10 and 11 in late 2020 and released the initial version of the DirectStorage API in March 2022.
DirectStorage 1.1 followed in October 2022 with GPU compression capabilities, and drivers by AMD, Intel and NVIDIA followed in November of the same year.
DirectStorage 1.2 is the latest version of the API. Game developers may use it to integrate the functionality into their games. This, and the fast storage device requirements are the two main factors that prevent the technology from reaching a wider audience.
The newest DirectStorage API includes an improvement that helps developers use the same code for high-speed SSDs, which DirectStorage requires, and legacy hard drives.
Microsoft explains that DirectStorage included options to open files in unbuffered mode only up until now. Old hard drives required buffered IO, which meant that game developers had to use different code for opening files. The new feature reduces code complexity and adds a requested feature to DirectStorage.
Another new feature allows developers to query the API to find out which compression format DirectStorage has selected. Microsoft notes that some developers requested the feature to set the default texture resolution settings based on the information.
DirectStorage 1.2 ships with performance improvements next to these new capabilities. The copy is moved to the compute queue for GPUs after GPU decompression, which is faster, according to Microsoft.
The new DirectStorage API includes three bug fixes next to that:
- Resolved https://github.com/microsoft/DirectStorage/issues/22 by adding a “Reserved1” field to DSTORAGE_REQUEST_OPTIONS. This makes the in-memory layout of the structure more explicit but doesn’t actually change the layout from previous versions.
- Fixed DSTORAGE_REQUEST_DESTINATION_TEXTURE_REGION for 3D textures, as reported to us on the DirectX Discord channel.
- Fixed scheduling issue that manifested when transferring uncompressed data from memory to buffers
DirectStorage's success depends on game support, but also on the widespread use of fast storage devices, as these benefit the most from the technology. Right now, Forspoken seems to be the only game that supports DirectStorage.
If this technology was so good as described, it should be applied to W11/12 for booting operations or intense SDD usage, and other kind of I/O workload that could help some other programs. Thanks for the article!
It will remain niche and will die, because nobody cares about it.