云祺Logo 云祺Logo

Hyper-V GPU直通配置指南

2026-06-18

什么是 Hyper-V GPU 直通?

Hyper-V GPU 直通允许将宿主服务器上的物理 GPU 直接分配给虚拟机,使虚拟机能够使用真实的 GPU 性能,而非依赖模拟图形。这对于机器学习、CAD 建模、视频编码或科学计算等资源密集型任务至关重要。

典型使用场景

  • AI/ML 模型训练与推理

  • CAD/CAM 与 3D 设计

  • 视频编辑与渲染

  • 虚拟桌面基础架构(VDI)

  • 科学模拟

  • 数据分析与高性能计算工作负载

Hyper-V 中 GPU 直通的关键优势

  • 性能提升

  • 应用程序兼容性

  • 资源整合

  • 增强的安全性与隔离性

  • 灵活的开发与测试

  • 成本效益

Hyper-V GPU 直通设置的先决条件

在设置 Hyper-V GPU 直通之前,请仔细检查硬件和软件两方面的要求。遗漏任一细节都可能导致令人困扰的错误。

硬件/软件验证清单

针对离散设备分配(DDA)

  • 操作系统:Windows Server 2016 或更高版本,并已启用 Hyper-V 角色

  • GPU:支持的PCIe GPU(例如,NVIDIA Tesla、Quadro,AMD Radeon Pro/FirePro)

  • 虚拟机类型:仅限第 2 代虚拟机

  • 设置:已禁用动态内存和检查点

  • GPU 使用情况:目标 GPU 不能被宿主机或其他虚拟机使用

  • 固件: UEFI,BIOS 中启用“4GB 以上解码”功能

  • 可选: SR-IOV 支持(某些 GPU 推荐启用)

适用于GPU分区(GPU-P):

  • 操作系统:Windows 10/11 专业版或企业版(版本1903及以上)

  • GPU:支持分区功能的现代 GPU

  • 虚拟机类型:仅限第 2 代虚拟机

  • PowerShell: 驱动注入所必需

  • 可选:在 BIOS 中启用可调整大小的 BAR 以获得更佳性能

  • 安全性:如果出现问题,请禁用基于虚拟化的安全功能(例如核心隔离)

注意:在启用 GPU-P 的虚拟机上同时使用 WSL2 可能导致资源冲突,因为 WSL2 会独占某些 GPU 的访问权限。

启用GPU直通的终极指南

离散设备分配(DDA)适用于需要极致性能的场景,即将整块物理显卡独占分配给单个虚拟机——例如深度学习服务器或高端渲染节点。

Hyper-V GPU 直通部署的最佳实践

  • 为顺利部署 Hyper-V GPU 直通,请遵循以下最佳实践:

  • 尽可能同时更新主机客户机驱动程序。

  • 监控温度和风扇转速,尤其是在高密度机架式机箱中。

  • 对于生产服务器,请至少专门配置一个非直通的板载/集成网卡,仅用于控制台/KMS 功能。

  • 除非供应商明确支持虚拟化功能,否则请勿将消费级游戏显卡与数据中心工作负载混用。

  • 仅使用第二代虚拟机,以获得更好的UEFI支持以及更完善的隔离性/安全边界。

  • 首次部署前,请在 BIOS/固件菜单中启用 SR-IOVAbove4GDecoding 选项。

在 Windows Server 中启用 GPU 直通的分步教程:

首要事项:在进行涉及硬件分配的配置更改前,请先关闭目标虚拟机!

1. 禁用自动检查点和动态内存:

这些必须关闭,以免干扰直接设备映射。

Set-VM -Name <VMName> -AutomaticStopAction TurnOffSet-VM -Name <VMName> -DynamicMemoryEnabled $false

2. 预留内存映射 I/O 空间:

您需要预留足够的地址空间,以确保客户操作系统能够识别显卡所暴露的所有显存/固件区域。

Set-VM -Name <VMName> -GuestControlledCacheTypes $true -LowMemoryMappedIoSpace 3072 -HighMemoryMappedIoSpace 33280

数值单位为兆字节(MB):此处我们预留约3GB的低MMIO空间,以及约32GB的高MMIO空间。

3. 查找物理 GPU 的位置路径:

打开设备管理器 > 展开显示适配器,右键单击目标显卡 > 选择属性 > 切换到详细信息选项卡,将属性下拉菜单设为位置路径,然后复制以PCIROOT...开头的值。

或者通过 PowerShell:

Get-PnpDevice | Where {$_.Class -eq "Display"} | Select Name,InstanceId

如果“显示”下方没有任何内容,请尝试按厂商名称搜索(Where {$_.FriendlyName -like 'NVIDIA'})。

4. 从主机卸载设备:

请使用此命令——请注意,使用 –force 参数将立即从主机控制中移除该设备!如果这是您台式机系统的主显示适配器,而非配备集成显卡(可用于控制台输出)的无头服务器硬件,您可能会丢失本地显示画面!

Dismount-VmHostAssignableDevice -LocationPath "<YourLocationPath>" -force

如果因有活动进程锁定设备而导致卸载失败:请先在“设备管理器”中暂时禁用该设备,再重试上述 PowerShell 命令。

5. 直接将设备分配给目标虚拟机:

Add-VMAssignableDevice -VMName <VMName> -LocationPath "<YourLocationPath>"

6. 启动虚拟机并安装驱动程序:

启动您的客户操作系统;在“显示适配器”下打开其自身的设备管理器——此时您应该能看到“Microsoft Hyper-V 视频”以及您实际的独立显卡均已列出!如有需要,请在客户操作系统内安装最新版驱动程序(NVIDIA 或 AMD),务必确保驱动程序版本与客户操作系统的版本相匹配,而非使用宿主机的驱动程序!

7. 稍后移除/收回卡片:

将控制权从客户机返回到宿主池:

Remove-VMAssignableDevice -VMName <VMName> -LocationPath "<YourLocationPath>"Mount-VMHostAssignableDevice -LocationPath "<YourLocationPath>"

验证是否成功

完成设置且客户机设备管理器中驱动程序加载后未显示错误图标,或运行一个快速基准测试应用程序后,即表示已准备就绪!由于应用程序代码与物理硬件之间不存在虚拟化开销,因此性能接近裸机水平。

在 Windows 10/11 中启用 GPU 直通的分步教程

如果灵活性比极致性能更重要——例如,多个用户需同时获得中等程度的加速——可考虑采用微软较新的“GPU 分区(GPU-P)”模型,通过分区虚拟 GPU(vGPU)将一块大型显卡分配给多个较小的任务。

1. 确认您的卡片支持分区功能:

在 Windows 的最新版本中:

Get-VMPartitionableGpu      # 适用于 Windows 10 及更高版本  Get-VMHostPartitionableGpu # 适用于 Windows 11 及更高版本

如果结果显示有任意兼容设备,则说明配置正常!

2. 向目标虚拟机添加 GpuPartition 适配器:

请确保目标虚拟机已关机,然后再继续操作!

添加-VMGpuPartitionAdapter -VMName <VMName>

3. 使用脚本将主机驱动程序复制到客户机中:

一个名为 Easy-GPU-PV 的流行脚本可自动注入驱动程序([GitHub 项目链接可根据要求提供])。请将其下载并解压到宿主系统,然后运行:

Set-ExecutionPolicy -Scope Process -ExecutionPolicy Bypass -Force.\Update-VMGpuPartitionDriver.ps1 -VMName <VMName> -GPUName "AUTO"

此操作会将当前正在使用的驱动程序复制到客户机镜像中,确保应用程序在启动后能正确识别其分配的虚拟 GPU 分区——即使官方安装程序禁止在虚拟化环境中安装!

4. 为访客访问预留充足的MMIO空间:

再次提醒:以下数值单位为兆字节(MB),而非千兆字节(GB)!

Set‑VM ‑Vmname <Vmname> ‑GuestControlledCacheTypes $true ‑LowMemoryMappedIoSpace 1024 ‑HighMemoryMappedIoSpace 32768

如果使用大容量显存的显卡(VRAM > 24 GB),请将数值调高。

5.(可选)按分区精细调整资源分配 (仅限 Windows 11)

您可以为每个适配器实例设置最小/最大显存(VRAM):

Set‑VMGpuPartitionAdapter –Vmname <Vmname> –MinPartitionVRAMBytes <min_bytes> –MaxPartitionVRAMBytes <max_bytes>

示例:根据工作负载需求,为每个分区分配约 800 MB 至 1 GB 的显存。

6.(重要)避免与 WSL 或其他服务发生冲突:

如果同时安装并运行了 WSL2,它可能会对相同的底层硬件获取独占锁,从而导致客户机在启动或资源分配过程中出现故障!如果问题持续存在,请暂时禁用 WSL(参阅微软官方指南)。

验证成功

启动目标客户操作系统;在其“设备管理器”中打开“显示适配器”选项卡——此时应出现一个新条目,名称类似于“虚拟渲染设备”,与默认的视频输出设备并列。运行测试应用程序,例如 Blender 的 Cycles 渲染器或 TensorFlow 训练任务;这些程序将通过各自的 API 报告已映射的可用 CUDA/OpenCL 资源。

Hyper-V GPU 直通故障排除

即使是经验丰富的管理员也会遇到问题!以下是一些常见问题及解决方法:

  • 客户操作系统中安装驱动程序后出现代码43错误:这通常意味着安装了错误版本的驱动程序,或存在其他进程遗留的锁定。请在客户操作系统内卸载并重新安装正确的驱动程序包,而非通过标准安装程序进行安装。

  • “启动失败”或开机黑屏:确保在整个生命周期内禁用动态内存和检查点功能,并确认集群节点中没有任何其他进程占用同一PCIe设备ID的锁。


  • 分配成功但性能不佳:检查是否存在 CPU/内存瓶颈,并确保存储子系统与网络子系统之间的带宽充足。

  • WSL/GPU 资源争用:若使用 WSL2,请在虚拟机或容器中执行 GPU 密集型任务期间暂时禁用 WSL2。

提示:使用专业解决方案保护您的 Hyper-V 虚拟

当您已完成 Hyper-V 的 GPU 直通配置,并在 Hyper-V 环境中运行关键业务负载时,必须采取措施防范数据丢失或停机风险,以保障您的投资安全——此时,Vinchin 备份与恢复作为一款专为虚拟化基础设施(如您的环境)打造的企业级备份解决方案,便派上了用场。

Vinchin 专注于为超过十五种主流虚拟化平台(包括 Hyper-VVMwareProxmox VEoVirtXenServerOpenStack 等)量身打造的专业备份与灾难恢复解决方案。

借助 Vinchin,无论您的虚拟机采用标准配置还是直通等高级配置,均可通过强大的备份功能、高效的备份策略以及灵活的恢复选项获得保护。该解决方案还提供易于使用的 Web 控制台,让您能够轻松、快速地上手使用。

Vinchin 备份与恢复的操作非常简单,只需几个简单的步骤。

步骤 1:在主机上选择 Hyper‑V 虚拟机

备份 Hyper-V 虚拟机

步骤 2:然后选择备份目标位置

备份 Hyper-V 虚拟机

步骤 3:选择策略

备份 Hyper-V 虚拟机

第四步:最后提交任务

备份 Hyper-V 虚拟机

Vinchin 为您的虚拟机提供全面保护,包括高级直通配置。全球数千家机构信赖 Vinchin,我们为您提供 功能完整的 15天免费试用,让您在投入任何成本之前,零风险体验全部功能。

下载按钮

下载免费试用版

适用于多种数据备份

* 15天全功能免费安全下载

Hyper-V GPU 直通常见问题解答

问题1:我能否在 Windows 家庭版上使用 Hyper-V GPU 直通功能?

A1:不支持。您需要 Pro、Enterprise 或 Education 版本;Home 版本不支持所需的虚拟化功能。

Q2:升级主机后,如何更新直通驱动程序?

A2: 重新运行 Easy-GPU-PV 脚本,目标为更新后的驱动程序堆栈;随后重启受影响的客户机。

问题3:GPU直通会增加虚拟机的启动时间吗?

A3:通常不会。任何增幅通常都很小。

Q4:我能否向正在运行的虚拟机热添加 GPU?

A4:否。大多数GPU直通场景要求在进行更改之前先关闭虚拟机。

结论

Hyper‑V 直通功能为高要求工作负载打开了新大门——但需在硬件兼容性、驱动程序管理及持续监控方面进行周密规划。借助 Vinchin,无论工作负载多么复杂,您都能安心确保每一项关键任务始终受到保护。立即开启 15 天免费试用!


云祺备份软件,云祺容灾备份系统,虚拟机备份,数据库备份,文件备份,实时备份,勒索软件,美国,图书馆

您可能感兴趣的新闻 换一批

现在下载,可享15天免费试用

立即下载

请添加好友为您提供支持
jia7jia_7

微信售后服务二维码

请拨打电话
为您提供支持

400-9955-698