DirectX12WorkGraphs正式出炉全新GPU自治系统旨在消除CPU瓶颈

导读 微软今天正式发布了一项新的DirectX12功能,该功能已经在预览版中推出了一段时间,引入了新型GPU自主性,试图消除CPU瓶颈。在一篇冗长的博...

微软今天正式发布了一项新的DirectX12功能,该功能已经在预览版中推出了一段时间,引入了新型GPU自主性,试图消除CPU瓶颈。

在一篇冗长的博客文章中,工程师(Direct3D)AmarPatel和工程师(DirectX编译器)TexRiddell解释了工作图,这是D3D12中的GPU自治系统,旨在解决GPU上一般计算工作负载的限制,以及释放潜在的GPU功能。简单来说,新系统旨在切换到更高效的GPU驱动的渲染系统,减少在不同工作负载中使用CPU的需要。

在许多GPU工作负载中,GPU上的初始计算决定了GPU需要执行哪些后续工作。这可以通过返回CPU来发出新工作来完成。但GPU能够直接自我供电通常会更好。D3D12中的ExecuteIndirect就是这种形式的一种形式,其中应用程序使用GPU记录非常受限的命令缓冲区,该命令缓冲区需要在GPU上进行串行处理才能发出新的工作。

考虑一个新的选择。假设在GPU上运行的着色器线程(生产者)可以请求运行其他工作(消费者)。消费者也可以是生产者。一旦GPU有能力运行所请求的工作,系统就可以安排它。该应用程序还可以让系统管理任务之间数据流动的内存。

这是工作图。节点图,其中每个节点上的着色器代码可以请求调用其他节点,而无需等待它们启动。工作图捕获用户的算法意图和整体结构,而不会让开发人员过多地了解它将运行的特定硬件。异步特性最大限度地提高了系统决定如何最好地执行工作的自由度。

有关DirectX12工作图功能的完整详细信息可以在此处找到。如果您想要更实际的解释,请参阅Remedy向Wccftech介绍的有关此功能潜力的内容。

郑重声明:本文版权归原作者所有,转载文章仅为传播更多信息之目的,如作者信息标记有误,请第一时候联系我们修改或删除,多谢。