在 Windows Server 中针对 GPU 加速进行规划

适用范围:Windows Server 2022、Windows Server 2016、Microsoft Hyper-V Server 2016、Windows Server 2019、Microsoft Hyper-V Server 2019

本文介绍 Windows Server 中可用的图形虚拟化功能。

何时使用 GPU 加速

根据你的工作负荷,你可能需要考虑 GPU 加速。 以下是在选择 GPU 加速之前应考虑的事项:

  • 应用和桌面远程处理 (VDI/DaaS) 工作负荷:如果要使用 Windows Server 构建应用或桌面远程处理服务,请考虑你希望用户运行的应用目录。 某些类型的应用(例如 CAD/CAM 应用、模拟应用、游戏以及渲染/可视化应用)严重依赖 3D 渲染来提供流畅且响应迅速的交互。 大多数客户认为 GPU 是使用这些类型的应用获得合理用户体验的必要条件。
  • 远程渲染、编码和可视化工作负荷:这些面向图形的工作负荷往往严重依赖 GPU 的专用功能(例如高效的 3D 渲染和帧编码/解码),以实现成本效益和吞吐量目标。 对于这种工作负荷,单个启用 GPU 的 VM 可能就能够匹配许多纯 CPU VM 的吞吐量。
  • HPC 和 ML 工作负荷:对于数据并行度高的计算工作负荷(例如高性能计算和机器学习模型训练或推理),GPU 可以显著缩短结果生成时间、推理时间和训练时间。 也可以这么说,在某个可比较的性能水平上,它们可能比纯 CPU 体系结构提供更好的成本效益。 许多 HPC 和机器学习框架都有启用 GPU 加速的选项;请考虑这是否有利于你的特定工作负荷。

Windows Server 中的 GPU 虚拟化

GPU 虚拟化技术在虚拟化环境(通常在虚拟机内)中启用 GPU 加速。 如果使用 Hyper-V 来虚拟化工作负荷,则需要使用图形虚拟化,以便提供从物理 GPU 到虚拟化应用或服务的 GPU 加速。 但是,如果工作负荷直接在物理 Windows Server 主机上运行,则无需进行图形虚拟化;应用和服务已有权访问 Windows Server 原生支持的 GPU 功能和 API。

Windows Server 中的 Hyper-V VM 可以使用以下图形虚拟化技术:

除了 VM 工作负荷外,Windows Server 还支持 Windows 容器内容器化工作负荷的 GPU 加速。 有关详细信息,请参阅 Windows 容器中的 GPU 加速

离散设备分配 (DDA)

使用离散设备分配(DDA,也称为 GPU 直通),你可以将一个或多个物理 GPU 专门分配给某个虚拟机。 在 DDA 部署中,虚拟化工作负荷在原生驱动程序上运行,通常具有对 GPU 功能的完全访问权限。 DDA 提供最高级别的应用兼容性和潜在性能。 DDA 还可以为 Linux VM 提供 GPU 加速,具体取决于支持情况。

DDA 部署只能加速有限数量的虚拟机,因为每个物理 GPU 最多只能为一个 VM 提供加速。 如果你在开发其体系结构支持共享虚拟机的服务,请考虑为每个 VM 托管多个加速工作负荷。 例如,如果要使用 RDS 生成桌面远程服务,则可以利用 Windows Server 的多会话功能在每个 VM 上托管多个用户桌面,从而提高用户规模。 这些用户将分享 GPU 加速的好处。

有关详细信息,请参阅以下主题:

RemoteFX vGPU

注意

出于安全方面的考虑,从 2020 年 7 月 14 日的安全更新开始,所有版本的 Windows 都默认禁用 RemoteFX vGPU,从 2021 年 4 月 13 日的安全更新开始,默认删除了 RemoteFX vGPU。 要了解详细信息,请参阅 KB 4570006

RemoteFX vGPU 是一种图形虚拟化技术,允许在多个虚拟机之间共享单个物理 GPU。 在 RemoteFX vGPU 部署中,虚拟化工作负荷在 Microsoft 的 RemoteFX 3D 适配器上运行,该适配器协调主机和来宾之间的 GPU 处理请求。 RemoteFX vGPU 最适用于不需要专用 GPU 资源的知识型工作者和高突发工作负荷。 RemoteFX vGPU 只能为 Windows VM 提供 GPU 加速。

有关详细信息,请参阅以下主题:

比较 DDA 和 RemoteFX vGPU

规划部署时,请考虑图形虚拟化技术之间的以下功能和支持差异:

说明 RemoteFX vGPU 离散设备分配
GPU 资源模型 专用或共享 仅专用
VM 密度 高(一个或多个 GPU 对许多 VM) 低(一个或多个 GPU 对一个 VM)
应用兼容性 DX 11.1、OpenGL 4.4、OpenCL 1.1 供应商(DX 12、OpenGL、CUDA)提供的所有 GPU 功能
AVC444 默认情况下启用 可通过组策略获取
GPU VRAM 最多 1 GB 专用 VRAM GPU 支持的 VRAM
帧速率 最高 30 fps 最高 60 fps
来宾中的 GPU 驱动程序 RemoteFX 3D 适配器显示驱动程序 (Microsoft) GPU 供应商驱动程序(NVIDIA、AMD、Intel)
主机 OS 支持 Windows Server 2016 Windows Server 2016;Windows Server 2019
来宾操作系统支持 Windows Server 2012 R2;Windows Server 2016;Windows 7 SP1;Windows 8.1;Windows 10 Windows Server 2012 R2;Windows Server 2016;Windows Server 2019;Windows 10;Linux
Hypervisor Microsoft Hyper-V Microsoft Hyper-V
GPU 硬件 企业 GPU(如 Nvidia Quadro/GRID 或 AMD FirePro) 企业 GPU(如 Nvidia Quadro/GRID 或 AMD FirePro)
服务器硬件 无特殊要求 新式服务器,向操作系统公开 IOMMU(通常是 SR-IOV 兼容硬件)