Latest Directx ((hot)) · Premium & Essential

In DirectX 11 and classic DirectX 12, the CPU had to record every single GPU task in a massive linear list. If a game needed to calculate shadows, then physics, then lighting, the CPU had to sit there, line by line, building that list.

Imagine a ray-traced reflection. In the old model, the GPU shoots a ray. If that ray hits a mirror surface, the GPU has to stop, bounce the data back to the CPU, wait for the CPU to say "yes, shoot another ray," and then restart. That round trip costs milliseconds—an eternity in gaming.

With , the GPU launches a "Node." That node processes the work. If it needs more work (a second bounce, a third bounce, a particle effect that spawns more particles), it spawns a child node right there on the silicon.

The terror comes from memory. Because the GPU can now generate infinite work (a particle system that explodes into a million more particles), developers can no longer rely on static buffers. Microsoft solved this with —a safety net where excess work spills over into system memory without crashing the driver.

This month, Microsoft’s DirectX team officially changed the menu. With the general release of (via the latest Agility SDK), the GPU finally got a promotion. It is no longer just a brute-force calculator; it now has a scheduler of its own. The "Load Balancing" Nightmare To understand why this is a solid leap forward, you have to look at the old way: the Command List .