[PVE]Intel核显SR-IOV虚拟化并分配给Win10

前言:

网上PVE intel核显SR-IOV的教程不少,但是实践起来往往会有许多坑,于是霜狐亲自采了一遍坑,出了这个教程。

我使用的配置(12300T+微星h610m e)在这里有所介绍,如果配置不同请自行注意可能有需要修改的地方,此外建议先安装好pve_source脚本并完成优化。

自用的家庭AIO低功耗静音家庭服务器
前言 之前提到过,我购买了一台二手的DELL R730XD企业服务器改造家用,不过最终因为电费和噪音退坑了。 家庭……
[PVE]优化脚本pve_source推荐(换源-合并local-lvm-去订阅提示)
介绍: 对于新手来说,一行行敲命令来完成PVE换源,合并local-lvm,配置Web页面传感器,去除订阅提示等工作十分麻烦还易出错,因此推荐J……

硬件支持:

这是个大坑!很多消费级硬件不支持SR-IOV。

请确保你的CPU是12代以后带核显的桌面端正式版CPU,ES版,笔记本版以及11代均不确定能否支持。

还有主版推荐华硕/微星两大一线,基本都支持SR-IOV,其他品牌未知,不过即使支持也记得一定在主板里打开SR-IOV选项!微星的H610M E默认就是关闭的,坑了我好久...

安装dkms驱动:

安装dkms:

apt install dkms -y

再次感谢Jazz大佬帮忙整理好了核显 SR-IOV 驱动:

用于 Gen 11 (如 i5-1135G7 的 Iris Xe 核显)、Gen12 (如 i7-1270p 的 Iris Xe 核显)及 Gen 13 (如 i5-13400 的 UHD 730 核显) SR-IOV,部分 Gen 11 核显 SR-IOV 失败可尝试使用 intel-i915-dkms 驱动

内核要求:适用于 PVE 6.2.16-16 及以上且 6.8 以下的内核

使用方法: 首次安装需安装两次。 安装过程中动态编译时间较长,需耐心等待,安装完成后需重启系统。

wget -q -O '/root/i915-sriov-dkms_6.1.11_all(PVE_6.2.16-16+).deb' 'https://bbs.x86pi.cn/file/topic/2024-05-13/file/7f12279527104fb288c2383d4e141e0cb2.deb' && dpkg -i '/root/i915-sriov-dkms_6.1.11_all(PVE_6.2.16-16+).deb'

还有另一个(和上面那个根据自己硬件和内核选择一个安装即可):

用于 Gen 11 (如 i5-1135G7 的 Iris Xe 核显)、Gen12 (如 i7-1270p 的 Iris Xe 核显)及 Gen 13 (如 i5-13400 的 UHD 730 核显) SR-IOV,部分 Gen 11 核显 SR-IOV 失败可尝试使用 intel-i915-dkms 驱动

内核要求:适用于 PVE 6.2.16-15 及以下内核

使用方法:

首次安装需安装两次。

安装过程中动态编译时间较长,需耐心等待,安装完成后需重启系统。

wget -q -O '/root/i915-sriov-dkms_6.1.11_all(PVE_6.2.16-15-).deb' 'https://bbs.x86pi.cn/file/topic/2023-11-14/file/b14f8d40f19f4ec5a8878653950e3b24b2.deb' && dpkg -i '/root/i915-sriov-dkms_6.1.11_all(PVE_6.2.16-15-).deb'

升/降级内核:

然而很多时候并非一帆风顺,我这台机器在最新的PVE8系统中就无论用哪个都会报错,最终选择先安装PVE7,然后手动更新内核和headers到6.2.16-20版本安装就成功了。

如何手动切换内核呢:先在https://mirrors.ustc.edu.cn/proxmox/debian/dists/bullseye/pve-no-subscription/binary-amd64/挑选好对应的内核版本,然后再PVE shell里直接执行:

apt install 内核版本

比如:

apt install pve-kernel-5.15.39-2-pve

headers也是同理。

安装好新内核后使用pve_source脚本切换使用的内核,然后可以将原内核删除来节约空间。

配置VF数量:

安装成功后回到pve_source脚本,通过脚本配置核显SR-IOV即可。

询问分配几个VF,就是想SR-IOV虚拟出几个虚拟核显:

UHD730:推荐最多3个

UHD770:推荐最多7个

仅供参考,似乎分出来的VF越多,每个VF性能越弱,而不是动态共享的,所以尽量不要多分。

Windows使用VF核显:

创建时BIOS选OVMF (UEFI),机型选q35,添加PCI设备,选0000:00:02.x这种,除了0000:00:02.0不能选其他都可以(比如0000:00:02.1,0000:00:02.2都是可以的),不要勾选所有功能,主GPU之类的,只勾选PCI-Express,然后正常开机安装Win10使用并安装VirtIO驱动和intel对应的核显驱动。

不过使用最新驱动可能会安装失败,我这里用的旧版本gfx_win_101.4316(安装后版本号31.0.101.5186)在12300T的UHD730上正常运行。

有的时候驱动也会莫名其妙安装不上去,重启一下虚拟机,然后重新安装一遍就好了。

此外,安装完驱动可能会看到核显报错43,这是正常现象,安装一个远程控制软件(比如Todesk,Rustdesk或windows自带的远程桌面等),设置好开机自启后将虚拟机关机,修改添加的pci设置如下图:

然后将显示改为“无(none)”,随后开机,通过远程控制软件连接,查看任务管理器中核显GPU在工作,43报错消失就直通成功了。

阅读剩余
THE END