
在GDC 2024上,AMD 刚刚扩展了微软最近发布的Work Graphs API ,并通过一个快速演示展示了这项新技术对游戏性能的强大作用。 AMD 的迭代将绘图调用和网格节点从 CPU 移至 GPU,从而减少了执行这些任务所需的时间。结果,AMD 发现,当将工作图与网格着色器结合使用时,性能得到了巨大的提升——渲染时间缩短了 64%。
微软推出工作图作为一种简化游戏和生产力流程的方法,所有这些都是通过让 GPU 能够在不先与 CPU 通信的情况下调度和执行任务。它内置于 Direct3D 12 API 中,可以减少 3D 游戏中的瓶颈并提高游戏性能。
添加网格节点是通过使用网格着色器来简化渲染复杂形状和场景的一种方法。从本质上讲,这应该限制渲染任务之间的切换,简化流程并提高效率。另一方面,绘制调用是指发送到 GPU 来渲染图形的请求,单独处理它们也会对性能产生影响。
“网格节点通过引入一种驱动网格着色器的新型叶节点来扩展工作图,并允许从工作图中引用普通图形 PSO。 […] 现在也可以完成完整的 PSO 更改!该功能称为网格节点,因为它允许工作图直接输入网格着色器,从而将工作图本身转变为增强型放大着色器。”AMD 架构师 Matthäus Chajdas 在 AMD GPUOpen 博客文章中写道。整个图形管道中的 PSO(管道状态对象)。

为了展示这些改进,AMD 分享了一些“超早期数据”,这些数据比较了使用RX 7900 XTX时使用工作图与间接执行的情况。执行间接是现代图形 API(例如 DirectX 12 和 Vulkan)中的一项功能,它允许 GPU 执行绘制或调度命令 – 本质上,它是另一件事,让 GPU 处理一些 CPU 工作负载,而不是为每个 CPU 工作负载进行通信。任务。
在该早期基准测试中,AMD 发现执行间接比具有网格节点扩展的工作图慢 39% (1.64 倍)。
AMD 还分享了德国科堡大学团队准备的 演示,该演示在 3D 游戏场景中实时展示了该功能。
很难预测工作图以及 AMD 对新功能的补充的影响。然而,这似乎是 GPU 承担游戏场景中首当其冲的工作的好方法,消除了 CPU 瓶颈并支持处理器较弱的系统。举个例子,AMD 在测试中使用了 Ryzen 7 5800X CPU,这证明这些较旧的芯片可能受益最大。