Microsoft's DirectX Raytracing Trick Could Slash VRAM Use By Up To 90%

hero uniform triangle density
Clustering allows this scene to have nearly uniform triangle density in screen space. - Image: Microsoft
There are some performance challenges in computing that exist because the workload is just that heavy, and ray-tracing is one of them. You can tackle something like this in two different ways: either build a bigger and badder processor to handle it, or optimize the algorithm to reduce the amount of work. NVIDIA did the latter with its RTX Mega Geometry tech, and now Microsoft is bringing those gains to the larger DirectX ecosystem in what it calls "the most significant update to DXR since its debut in 2018."

DXR is of course DirectX Ray-tracing, and it's the API that underpins nearly all games that use ray-traced graphics features. DXR has regularly benefitted from new technologies developed by hardware vendors—primarily NVIDIA, unsurprisingly. This story is the same as before, where specific technologies that NVIDIA packages under the name "RTX Mega Geometry" are being standardized in the DXR API so that they can be used by game developers without necessarily targeting one vendor's hardware.

nvidia zorah mega geometry
Final render, individual triangles, and then clusters. The clustered representation takes a lot less work. - Image: NVIDIA


So what are these features? The three main things coming to DirectX Raytracing are Clustered Geometry (CLAS), Partitioned TLAS (PTLAS), and GPU-driven acceleration structure builds. Put simply, efficient real-time ray-tracing is all about using "acceleration structures," smart approximations of the scene. By dividing the scene into these acceleration structures, the game engine can more rapidly discard entire sections of the scene for ray-triangle intersection tests.

So, CLAS uses triangle clustering to drastically accelerate these tests, while the new ExecuteIndirectRTASOperations() allows the GPU to execute batches of acceleration structure operations using arguments stored in GPU memory, skipping the CPU for these tasks. That's all fairly straightforward.

microsoft dxr clas benchmark
Microsoft's benchmark scene is a worst-case, and real games won't see gains this large. - Image: Microsoft


Meanwhile, PTLAS is arguably the more interesting of these features. Basically, instead of having to rebuild or update the whole massive scene-wide acceleration structure whenever objects move, PTLAS lets the engine partition the scene and update only the affected partitions. Static portions remain intact, saving tons of work. This is great for open-world environments and games with lots of animated objects, which are a pain for ray-tracing.

new directx features performance table
Microsoft's benchmark data for the new DirectX features are promising. - Image: Microsoft/GitHub

Combined, these features deliver enormous gains in ray-tracing performance. Testing on a Radeon RX 9070 XT in a "test playground" microbenchmark, Microsoft achieved a 7.83x speed-up in per-frame GPU ray-tracing, and cut video memory usage for acceleration structures by 89.7%. Microsoft warns that real games won't see "this magnitude of wins," and that's completely fair; this is a targeted test to illustrate the improvements, after all.

It's still really exciting, though. Even for games where it doesn't necessarily suit the art style, ray-tracing is a massive visual win. When the lighting is physically simulated, your brain recognizes the realism of it and it drastically improves the verisimilitude of the presented virtual scene. Here's hoping developers actually patch their games to implement these techniques, because they're already available on GPU hardware from all three vendors, and they're coming to Qualcomm's Adreno next year.

Hat tip to TechPowerUp! for the spot!
Zak Killian

Zak Killian

A 30-year PC building veteran, Zak is a modern-day Renaissance man who may not be an expert on anything, but knows just a little about nearly everything.