PVE环境下Intel核显SR-IOV虚拟化配置指南
PVE环境下Intel核显SR-IOV虚拟化配置指南
SR-IOV(Single Root I/O Virtualization)是一种PCIe设备虚拟化技术,允许单个物理设备在多个虚拟机之间共享。在Proxmox VE(PVE)环境中,通过SR-IOV技术可以将Intel核显分配给Windows虚拟机使用,实现图形处理任务的高效运行。本文将详细介绍在PVE中配置Intel核显SR-IOV的具体步骤。
前言
网上关于PVE Intel核显SR-IOV的教程不少,但实践起来往往会有许多坑。本文将基于作者的实际经验,提供一个详细的配置指南。需要注意的是,以下配置基于12300T+微星H610M E的硬件组合,如果使用其他配置,请根据实际情况进行适当调整。此外,建议在开始之前先安装好pve_source脚本并完成系统优化。
2024年自用的AIO低功耗静音家庭服务器
硬件支持
这是配置过程中最大的一个坑!很多消费级硬件并不支持SR-IOV。请确保你的CPU是12代以后带核显的桌面端正式版CPU,ES版、笔记本版以及11代CPU均不确定能否支持。主板方面,推荐使用华硕或微星等一线品牌,这些品牌基本都支持SR-IOV。即使主板支持,也一定要在BIOS中打开SR-IOV选项。需要注意的是,微星的H610M E主板默认是关闭SR-IOV的,这一点需要特别注意。
安装dkms驱动
首先需要安装dkms:
apt install dkms -y
感谢Jazz大佬整理的核显SR-IOV驱动,适用于Gen 11(如i5-1135G7的Iris Xe核显)、Gen 12(如i7-1270p的Iris Xe核显)及Gen 13(如i5-13400的UHD 730核显)的SR-IOV。根据内核版本选择合适的驱动包:
- 适用于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'
- 适用于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'
安装过程中动态编译时间较长,需要耐心等待,安装完成后需重启系统。
升/降级内核
在某些情况下,可能需要手动切换内核版本。例如,作者在最新的PVE 8系统中遇到报错,最终选择先安装PVE 7,然后手动更新内核和headers到6.2.16-20版本。具体步骤如下:
- 在https://mirrors.ustc.edu.cn/proxmox/debian/dists/bullseye/pve-no-subscription/binary-amd64/选择合适的内核版本。
- 在PVE shell中执行安装命令:
apt install pve-kernel-5.15.39-2-pve
headers的安装方法相同。安装好新内核后,使用pve_source脚本切换使用的内核,然后可以将原内核删除以节省空间。
配置VF数量
安装成功后,回到pve_source脚本,通过脚本配置核显SR-IOV。根据核显型号推荐的VF数量:
- UHD730:推荐最多3个
- UHD770:推荐最多7个
需要注意的是,分出的VF越多,每个VF的性能可能会越弱,因此建议不要过度分配。
Windows使用VF核显
在创建虚拟机时,需要进行以下配置:
- BIOS选择OVMF (UEFI)
- 机型选择q35
- 添加PCI设备,选择0000:00:02.x(除了0000:00:02.0以外的其他设备)
- 只勾选PCI-Express功能
- 正常开机安装Windows 10并安装VirtIO驱动和Intel对应的核显驱动
在安装驱动时,可能会遇到安装失败的情况,建议使用旧版本的驱动(如gfx_win_101.4316,安装后版本号31.0.101.5186)。如果驱动安装不成功,可以尝试重启虚拟机后重新安装。
此外,安装完驱动后可能会看到核显报错43,这是正常现象。解决方法是:
- 安装一个远程控制软件(如Todesk、Rustdesk或Windows自带的远程桌面等)
- 设置远程控制软件开机自启
- 将虚拟机关机
- 修改PCI设备设置(具体设置请参考原文中的图片)
- 将显示模式改为“无(none)”
- 通过远程控制软件连接虚拟机,检查任务管理器中核显GPU是否在工作,43报错消失即表示直通成功。