That blisteringly fast storage technology found in the next-gen consoles is coming to PCs too, debuting first with the RTX IO technology in Nvidia’s new GeForce RTX 30-series graphics cards. Microsoft just pulled back the curtain a bit more on how it works.
Yes, the creator of Windows is explaining how SSD technology works in a graphics card. No, it’s not as bizarre as it sounds.
Both the Xbox Series X and Nvidia’s RTX IO tap into Microsoft’s DirectStorage, a new DirectX API. Microsoft teased that it would be coming to PCs after the Xbox Series X announcement. This week, the company revealed a bit more about how the technology helps your SSD and GPU work more closely together to reduce (and possibly eliminate) loading times—though you’ll need a speedy NVMe drive to take advantage of it.
“With Nvidia RTX IO, vast worlds will load instantly. Picking up where you left off will be instant. This is a very big deal for next-generation gaming,” Nvidia CEO Jensen Huang said while introducing the technology. Instantaneous loading is also a key selling point for the Xbox Series X and PlayStation 5 launching later this year.
How Microsoft DirectStorage and RTX IO work
“Games have pushed PC IO and file systems to the breaking point,” Huang said. DirectStorage was built to smash past that. Traditionally, CPUs have both called game assets from your storage and decompressed them, passing the data through the system memory over to your graphics card. Microsoft’s Andrew Yeung explained why that worked well before, but not in an era of blazing-fast PCIe 4.0 NVMe drives:
“Previous gen games had an asset streaming budget on the order of 50MB/s which even at smaller 64k block sizes (ie. one texture tile) amounts to only hundreds of IO requests per second. With multi-gigabyte a second capable NVMe drives, to take advantage of the full bandwidth, this quickly explodes to tens of thousands of IO requests a second. Taking the Series X’s 2.4GB/s capable drive and the same 64k block sizes as an example, that amounts to >35,000 IO requests per second to saturate it.
Existing APIs require the [game] to manage and handle each of these requests one at a time first by submitting the request, waiting for it to complete, and then handling its completion. The overhead of each request is not very large and wasn’t a choke point for older games running on slower hard drives, but multiplied tens of thousands of times per second, IO overhead can quickly become too expensive preventing games from being able to take advantage of the increased NVMe drive bandwidths.”
In today’s world of 100GB-plus games with massive file textures and ludicrously fast PCIe 4.0 SSDs, that traditional CPU handoff has become the bottleneck.
But while CPU threads need to complete a task before moving onto the next one, GPUs excel at executing many tasks in parallel. DirectStorage takes advantage of that by letting ultra-fast NVMe SSDs send data directly to the ultra-fast dedicated VRAM on your video card. It’s essentially cutting out the pokey middle-man, while also freeing up your CPU to do other work.
Yeung says DirectStorage offers multiple tools for developers to maximize storage performance: “by reducing per-request NVMe overhead, enabling batched many-at-a-time parallel IO requests which can be efficiently fed to the GPU, and giving games finer grain control over when they get notified of IO request completion instead of having to react to every tiny IO completion.”
Nvidia’s Huang said that RTX IO offers “APIs for fast loading and streaming directly from SSD to GPU memory” and GPU lossless decompression. It’s unclear yet whether that’s a special sauce, or just Nvidia glomming onto the benefits of DirectStorage itself. Nvidia’s marketing did a killer job of tying real-time ray tracing to its RTX branding, but the technology is actually built on Microsoft’s underlying Direct Raytracing API, which is why you’ll be seeing it in the Xbox Series X and AMD’s RDNA 2-based “Big Navi” graphics cards later this year.
The need for NVMe speed (and smarts)
Microsoft’s post makes it clear that you’ll need an NVMe drive to tap into DirectStorage’s benefits, however. That’s because NVMe drives offer both extremely high bandwidth compared to traditional SATA-based storage, as well as multiple “NVMe queues” that can contain multiple IO requests, making them “a perfect match to the parallel and batched nature of modern gaming workloads”—and GPU capabilities.
That’s great for PC enthusiasts who have invested in one. Until this point, the benefits of a blistering NVMe drive have largely been constrained to large file transfers or editing 4K/8K video. Games haven’t been noticeably faster on an NVMe drive than a standard 2.5-inch SATA SSD, even with a ludicrously capable PCIe 4.0 SSD like the Corsair Force MP600 pictured above.
DirectStorage looks like it’ll change that—when it arrives on PCs, that is. While the technology will be part of the Velocity Architecture inside the Xbox Series X this fall, Microsoft says it’s hoping to get a DirectStorage preview in the hands of PC developers sometime in 2021. If the dream of instantly loading worlds turns into a gaming reality, the wait will be worth it.