微软确认神经渲染即将登陆 DirectX

继 英伟达Nvidia发布 RTX 50 系列显卡之后,微软确认将在其 DirectX API 中引入神经渲染功能。神经渲染涵盖了一系列新技术,这些技术利用人工智能和机器学习 (AI 和 ML) 来改变传统的图形管道。这些变化将使 3D 图形走上转型之路。

微软在 DirectX 中启用神经渲染的第一步是支持协作向量。这一新增功能将释放 Nvidia RTX 50 系列 GPU 上的“神经着色”功能。这是首批配备具有神经着色功能的 Tensor Core 的 Nvidia GPU。

  • 协作向量将加速实时渲染的实时 AI 工作负载。它支持将矩阵与任意大小的向量相乘,从而优化矩阵向量运算。
  • 协作向量还允许 AI 任务在着色器管道的不同阶段运行,从而允许小型神经网络在像素着色器内运行而不占用整个 GPU。

这样就可以实现神经图形技术,而无需在每次使用 AI/ML 操作时都停止图形管道。

简单来说,微软正在改变 DirectX,让 AI 成为图形管道的一部分,而不是需要单独处理的单独组件。这为开发人员提供了新的选择,使他们能够使用 AI 来增强游戏渲染的各个方面。

什么是协作向量?
协作向量是DirectX和CUDA中的一种线程协作机制,通过细粒度同步和协作提升GPU程序性能,适用于需要复杂数据共享和同步的并行任务。

在DirectX中,协作向量(Cooperative Vector)通常与CUDA或DirectX 12的协作组(Cooperative Groups)相关。协作组是一种编程模型,允许线程在更细粒度上同步和协作,尤其适用于GPU编程。
协作向量的关键点:

  1. 线程协作:协作向量允许多个线程在同一线程块或不同线程块中协同工作,执行复杂任务。
  2. 细粒度同步:与传统的线程块同步相比,协作向量提供了更灵活的同步机制,允许线程子集独立同步。
  3. 性能优化:通过减少不必要的同步开销,协作向量有助于提升GPU程序的性能。
  4. 应用场景:常用于需要复杂数据共享和同步的算法,如并行归约、扫描等。


为什么协作向量很重要?

  • 协作向量支持将加速 AI 工作负载的实时渲染,从而直接提高神经渲染技术的性能。它将通过实现矩阵与任意大小向量的乘法来实现这一点,从而优化 AI 训练、微调和推理所需的大量矩阵向量运算。
  • 协作向量还使 AI 任务能够在不同的着色器阶段运行,这意味着小型神经网络可以在像素着色器中运行,而无需消耗整个 GPU。
  • 协作向量将使开发人员能够将神经图形技术无缝集成到 DirectX 应用程序中,并点亮跨多个平台对 AI 加速器硬件的访问。
我们的目标是为游戏开发者提供他们创造下一代沉浸式体验所需的尖端工具。

请注意,Nvidia 的 RTX 50 系列 GPU 是目前唯一支持神经着色器的 GPU。不过,微软正在与 AMD、英特尔、Nvidia 和高通合作,以实现对这些新功能的跨供应商支持。微软希望这些变化成为 DirectX 的核心部分。