At GDC 2024, AMD just expanded on Microsoft’s recently announced Work Graphs API, and a quick demo shows just how powerful the new tech can be for gaming performance. AMD’s iteration moves draw calls and mesh nodes from the CPU to the GPU, cutting back on the time it takes to execute these tasks. As a result, AMD found that there was a massive performance improvement — rendering time saw a 64% boost — when using Work Graphs with mesh shaders.
Microsoft introduced Work Graphs as a way to streamline processes both in gaming and in productivity, all by giving the GPU the power to schedule and execute tasks without first communicating with the CPU. It’s built into the Direct3D 12 API and it can reduce bottlenecks and improve gaming performance in 3D games.
The addition of mesh nodes is a way to simplify rendering complex shapes and scenes through the use of mesh shaders. Essentially, this should limit switching between rendering tasks, streamlining the process and improving efficiency. Draw calls, on the other hand, refer to requests sent to the GPU to render graphics, and processing them separately can also have an impact on performance.
“Mesh nodes extend work graphs by introducing a new kind of leaf node that drives a mesh shader, and which allows a normal graphics PSO to be referenced from the work graph. […] Full PSO changing can now be done as well! The feature is called mesh nodes, as it allows a work graph to feed directly into a mesh shader, turning the work graph itself into an amplification shader on steroids,” Matthäus Chajdas, AMD architect, writes in the AMD GPUOpen blog post, referring to the PSO (Pipeline State Objects) throughout the graphics pipeline.
To showcase the improvements, AMD was able to share some “super early numbers” that compare using Work Graphs versus Execute Indirect when using an RX 7900 XTX. Execute Indirect is a feature in modern graphic APIs, such as DirectX 12 and Vulkan, that allows the GPU to perform draw or dispatch commands — essentially, it’s another thing that lets the GPU handle some of the CPU workloads instead of communicating with it for every task.
In that early benchmark, AMD found that Execute Indirect is up to 39% slower (1.64x) than Work Graphs with the mesh nodes extension.
AMD also shared a demo prepared by the team at Coburg University in Germany that showcases the feature in real-time in a 3D game scenario.
It’s hard to predict the impact of Work Graphs, as well as AMD’s additions to the new feature. However, it seems like it’ll be a good way for the GPU to shoulder the brunt of the work in gaming scenarios, removing CPU bottlenecks and supporting systems with weaker processors. Just as an example, AMD used a Ryzen 7 5800X CPU in its testing, and this proves that these older chips may benefit the most.