Windows 容器中的 GPU 加速
对于许多容器化的工作负荷,CPU 计算资源可提供足够的性能。 但是,对于某一类工作负载,GPU(图形处理单元)提供的大规模并行计算能力能够将操作速度提高几个数量级,从而大大降低成本并提高吞吐量。
GPU 已经成为许多常用工作负荷(从传统的渲染和模拟到机器学习训练和推理)的通用工具。 Windows 容器支持对 DirectX 和基于它构建的所有框架进行 GPU 加速。
注意
此功能在 Docker Desktop 版本 2.1 和 Docker 引擎 - 企业版 19.03 或更高版本中可用。
要求
要使此功能生效,你的环境必须满足以下要求:
- 容器主机必须运行 Windows Server 2019 或 Windows 10 版本 1809 或更高版本。
- 容器基础映像必须是 mcr.microsoft.com/windows:1809 或更高版本。 当前不支持 Windows Server Core 和 Nano Server 容器映像。
- 容器主机必须运行 Docker 引擎 19.03 或更高版本。
- 容器主机上必须有一个运行显示驱动程序版本 WDDM 2.5 或更高版本的 GPU。
若要检查显示驱动程序的 WDDM 版本,请在容器主机上运行 DirectX 诊断工具 (dxdiag.exe)。 在工具的“显示”选项卡中查看“驱动程序”部分,如下所示。
运行支持 GPU 加速的容器
若要启动支持 GPU 加速的容器,请运行以下命令:
docker run --isolation process --device class/5B45201D-F2F2-4F3B-85BB-30FF1F953599 mcr.microsoft.com/windows:1809
重要
DirectX(和基于它构建的所有框架)是目前仅有的可以通过 GPU 进行加速的 API。 不支持第三方框架。
Hyper-V 隔离 Windows 容器支持
目前不支持对 Hyper-V 隔离 Windows 容器中的工作负荷进行 GPU 加速。
Hyper-V 隔离 Linux 容器支持
目前不支持对 Hyper-V 隔离 Linux 容器中的工作负荷进行 GPU 加速。
详细信息
有关利用 GPU 加速的容器化 DirectX 应用的完整示例,请参阅 DirectX 容器示例。