让 Hyper-V 中的虚拟机使用宿主机上的 GPU

开始之前你应该已经在 Hyper-V 中安装好一个虚拟机了,如果没有,你可以跟着上篇文章安装

在安装完后你可能会遇到一些问题,例如没有声音,首先先来解决一下这些问题。如果你不想看这部分的内容可以直接跳转到后面

这个问题一般只要开启增强会话就可以解决

增强会话

但是开启后可能又会出现无法登录的情况

无法登录

这时先关闭增强会话。然后打开设置

设置

打开 帐户 > 登陆选项

Sign-in options
登陆选项

关闭“为了提高安全性,仅允许对此设备上的 Microsoft 帐户使用 Windows Hello 登录(推荐)”

For improved security, only allow Windows Hello sign-in for Microsoft accounts on this device (Recommended)
关闭

再次尝试开启增强会话,使用 Microsoft 帐户的密码即可登录

可以登录

声音可以正常播放

右下角没有红色叉叉了

接下来开始干正事

首先退出虚拟机

退出

复制代码:
$vm = "name" #虚拟机名称
Add-VMGpuPartitionAdapter -VMName $vm #添加GPU
Set-VMGpuPartitionAdapter -VMName $vm -MinPartitionVRAM 1 #设置参数(不用动)
Set-VMGpuPartitionAdapter -VMName $vm -MaxPartitionVRAM 100000000
Set-VMGpuPartitionAdapter -VMName $vm -OptimalPartitionVRAM 99999999
Set-VMGpuPartitionAdapter -VMName $vm -MinPartitionEncode 1
Set-VMGpuPartitionAdapter -VMName $vm -MaxPartitionEncode 100000000
Set-VMGpuPartitionAdapter -VMName $vm -OptimalPartitionEncode 99999999
Set-VMGpuPartitionAdapter -VMName $vm -MinPartitionDecode 1
Set-VMGpuPartitionAdapter -VMName $vm -MaxPartitionDecode 500000000000000000
Set-VMGpuPartitionAdapter -VMName $vm -OptimalPartitionDecode 499999999999999999
Set-VMGpuPartitionAdapter -VMName $vm -MinPartitionCompute 1
Set-VMGpuPartitionAdapter -VMName $vm -MaxPartitionCompute 100000000
Set-VMGpuPartitionAdapter -VMName $vm -OptimalPartitionCompute 99999999
Set-VM -GuestControlledCacheTypes $true -VMName $vm
Set-VM -LowMemoryMappedIoSpace 1Gb -VMName $vm
Set-VM -HighMemoryMappedIoSpace 32GB -VMName $vm

将 name 改为你的虚拟机的名称

改名

全部复制到管理员 PowerShell

粘贴
run
执行

尝试启动虚拟机,提示遇到错误

尝试更改“demo”的状态时应用程序遇到错误。

先退出,打开虚拟机设置

settings
设置

将启用检查点关闭并应用

关闭检查点

虚拟机已经可以正常启动,查看设备管理器,已经可以看到显卡。但是提示“Windows has stopped this device because it has reported problems.”,这是因为显卡还没有合适的驱动,接下来就要给它安装驱动

设备管理器中已经显示,但无法正常工作

在宿主机上打开 %SystemRoot%\System32\DriverStore\FileRepository

%SystemRoot%\System32\DriverStore\FileRepository

在宿主机上打开 设备管理器 > 显示适配器 > GPU > 驱动程序 > 驱动程序详细信息 在列表中会看到一些 nv 开头,随机数字和字母结尾,后面还有一串路径的东西,将这部分文本记下来在资源管理器中找到(仅限 NVIDIA 的 GPU,AMD 和 Intel 的 GPU 请自行查找)

查看驱动
找到目录

将驱动复制到虚拟机

坐和放宽

以下操作仅适用于 NVIDIA 的 GPU

在虚拟机的 %SystemRoot%\System32 下创建一个名为 HostDriverStore 的文件夹

可能会弹出 UAC 索要权限,允许即可

再在里面新建一个名为 FileRepository 的文件夹

同上

将驱动复制到刚刚创建的文件夹中

copy
复制驱动

将宿主机上的 %SystemRoot%\System32\nvapi64.dll 复制到虚拟机的 %SystemRoot%\System32 下

nvapi64.dll
先复制到其他位置,再移动到 System32 下

AMD 把刚刚找到的驱动复制到虚拟机中的相同目录

重新启动虚拟机后查看设备管理器,GPU 工作正常

This device is working properly.
This device is working properly.

安装一个 Minecraft 测试一下光线追踪和 DLSS 是否正常

方神,启动!

光线追踪可以正常开启,但 DLSS 是灰色的无法开启,具体原因我也不知道

渲染没问题
FacebookXSina WeiboThreadsQzoneTelegram

发表评论