标签归档:IOMMU

为proxmox启用intel核显的虚拟化

参考:https://cetteup.com/216/how-to-use-an-intel-vgpu-for-plexs-hardware-accelerated-streaming-in-a-proxmox-vm/

家里跑着两个proxmox的虚拟化服务器,其中一个是用NUC6i5SYK跑的,有张Iris 540的核显,之前一直没用上,前阵子某天看到有视频UP主在讲Nvidia逐步支持消费级显卡的显卡虚拟化,能让虚拟机共享母机的显卡。同时提到了,Intel的显卡也有一样的功能,而且发布了挺久了,于是我稍作Google,找到教程并成功开启。

不过这个功能要求CPU是Intel酷睿5代以后的CPU或者Xeon E3 v4之后的CPU,同时,也被称为GVT-g。比起PCI直通显卡,这个功能让母机依然能够使用该核显,也能给多个虚拟机共享核显的资源,对我们这种抠抠索索的穷逼友好了不少。

在Proxmox上启用PCI直通和GVT-g

首先,命令行登陆proxmox的母机,进行下一步操作前建议先执行一次apt更新,确保系统是最新的状态。

第二步,修改/etc/default/grub文件,修改GRUB_CMDLINE_LINUX_DEFAULT的参数,在后面添加“intel_iommu=on i915.enable_gvt=1”,就像这样:

GRUB_CMDLINE_LINUX_DEFAULT="quiet intel_iommu=on i915.enable_gvt=1"

然后保存,执行update-grub以更新grub的配置。

参考中在执行update-grub之后,在这里会重启检查dmesg,个人推荐放做完全部修改之后再重启,可以少重启那么一次……

第三步,修改/etc/modules文件,插入以下内容,启用PCI直通和GVT-g

# Modules required for PCI passthrough
vfio
vfio_iommu_type1
vfio_pci
vfio_virqfd

# Modules required for Intel GVT
kvmgt
exngt
vfio-mdev

最后重启服务器,重启完毕之后,可以使用这个命令检查一下是否有输出,如果没有输出的话,可能在哪里出了问题。

dmesg | grep -e DMAR -e IOMMU

给虚拟机添加虚拟显卡

当母机支持显卡虚拟化之后,就可以给虚拟机添加虚拟显卡了,全程可以在web页面完成操作。

在虚拟机-硬件里面添加PCI设备

选择完成虚拟化的显卡

选择MDev类型,这时候有两个选择,根据原文,两个其实性能没什么差别,就是V5_8能有2个,而V5_4只能有1个……

这里要注意的是,根据参考,勾选“主GPU”的话,会使得Proxmox的console失效,这个我没验证。

完了之后重启虚拟机,然后就能在设备管理器里面看到显卡了,打上补丁之后,就能正确显示显卡型号了。

因为是Intel的显卡,用windows自带的驱动更新就可以自动下载驱动并安装了。

大功告成~

我还看到个为RDP启用显卡的教程,明天整一整。