Hyper-V 创建显卡虚拟化教学(Nvidia显卡篇)
烧酒酒丶
2025年10月13日 21:06
从头学电脑

前因:

在Vmware里面玩游戏,每30分钟就会卡一次,而且生成的vGPU性能低下,故更换虚拟化平台,显卡虚拟化还可以让你在虚拟机中更流畅的玩游戏、还可以做一些有生产力的东西

前提条件:

  1. 一个通过Hyper-V创建的虚拟机,并已安装好Windows10 或更高版本 的系统

  2. 一张NVIDIA显卡,支持NCENC,显卡驱动的 WDDM 版本需大于 2.4

  3. 宿主机运行 Windows 10/11 专业版或企业版,支持 Hyper-V


配置步骤:

  • 获取支持虚拟化的显卡,并复制显卡Name留作备用

以管理员方式启动 PowerShell,输入命令:

Windows11:Get-VMHostPartitionableGpu

Windows10:Get-VMPartitionableGpu

Name中的就是我们可以调用的显卡,需要复制一下里面的内容做备用

\\?\PCI#VEN_10DE&DEV_1F08&SUBSYS_12FD1B4C&REV_A1#4&aa66160&0&0008#​{064092b3-625e-43bf-9eb5-dc845897dd59}\GPUPARAV

  • 添加vGPU到虚拟机中

创建一个带有管理员权限的PowerShell,设置局部环境变量

环境变量讲解:vm=虚拟机变量 gpu=显卡Name

$vm = "Windows10"

$gpu = "\\?\PCI#VEN_10DE&DEV_1F08&SUBSYS_12FD1B4C&REV_A1#4&aa66160&0&0008#​{064092b3-625e-43bf-9eb5-dc845897dd59}\GPUPARAV

  • 运行以下代码,将GPU添加到虚拟机中

Add-VMGpuPartitionAdapter -VMName $vm -InstancePath $gpu

输入后大概你的虚拟机就会识别到显卡了,可能会报错43,不要急,这样就是添加成功了


  • 设置vGPU的性能参数 

关掉你的虚拟机,不然没办法改,然后在PowerShell中执行以下代码

Set-VMGpuPartitionAdapter -VMName $vm -MinPartitionVRAM 80000000 -MaxPartitionVRAM 100000000 -OptimalPartitionVRAM 100000000 -MinPartitionEncode 80000000 -MaxPartitionEncode 100000000 -OptimalPartitionEncode 100000000 -MinPartitionDecode 80000000 -MaxPartitionDecode 100000000 -OptimalPartitionDecode 100000000 -MinPartitionCompute 80000000 -MaxPartitionCompute 100000000 -OptimalPartitionCompute 100000000

Set-VM -GuestControlledCacheTypes $true -VMName $vm

Set-VM -LowMemoryMappedIoSpace 1Gb -VMName $vm

Set-VM -HighMemoryMappedIoSpace 8GB -VMName $vm 

-HighMemory 不要设置低于8G -LowMemoryMappedIoSpace 最低1G就好


  • 配置驱动

去物理机寻找驱动文件,然后放到开机的虚拟机中

物理机驱动文件路径:

C:\Windows\System32\DriverStore\FileRepository

虚拟机驱动文件路径:

C:\Windows\System32\HostDriverStore\FileRepository

  • 复制nvAPI

找到宿主机中的nvAPI文件,文件路径如下:

C:\Windows\System32\nvapi64.dll

直接复制到虚拟机中同目录下,驱动配置完成

  • 检查驱动状态

重启虚拟机 进入设备管理器 观察显示适配器前是否有三角叹号

没有就是大功告成了,可以跑个游戏测试一下了