🖥️ Intel Arc 显卡直通教程
适用环境:
- 主机操作系统:飞牛OS(Linux 内核 6.12.18-trim)
- 虚拟机:Windows 11(基于 QEMU/KVM + libvirt)
- 显卡:Intel Arc Pro B50(PCI ID:
8086:e212 + 8086:e2f7)
- CPU:AMD EPYC 7K62(本教程同时说明 Intel CPU 配置差异)
一、准备工作:硬件与 BIOS 设置
✅ 1. 确认主板支持 IOMMU(AMD-Vi / Intel VT-d)
| CPU 类型 |
BIOS 选项名称 |
必须启用 |
| AMD(如 EPYC 7K62) |
SVM Mode、IOMMU、Above 4G Decoding |
✔️ |
| Intel |
Intel Virtualization Technology (VT-x)、Intel VT-d、Above 4G Decoding |
✔️ |
💡 Above 4G Decoding 必须开启,否则高地址设备(如 Arc 显卡)无法正确分配内存。
二、启用 IOMMU(内核级支持)
✅ 2.1 编辑 GRUB 配置文件
打开终端,执行:
sudo vi /etc/default/grub
根据你的 CPU 类型,在 GRUB_CMDLINE_LINUX_DEFAULT 行末尾添加参数:
▶ 如果是 AMD CPU(如 EPYC 7K62):
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash amd_iommu=on iommu=pt"
▶ 如果是 Intel CPU:
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash intel_iommu=on iommu=pt"
参数说明:
amd_iommu=on / intel_iommu=on:启用 IOMMU
iommu=pt:仅对直通设备启用 IOMMU,提升宿主机性能
✅ 2.2 更新 GRUB 并重启
更新引导配置(飞牛OS 为 Debian 系):
sudo update-grub
# 或通用方式:
sudo grub-mkconfig -o /boot/grub/grub.cfg
重启系统:
sudo reboot
✅ 2.3 验证 IOMMU 是否启用
重启后,在终端执行:
dmesg | grep -i IOMMU
▶ AMD CPU 正确输出应包含:
AMD-Vi: IOMMU performance counters supported
pci 0000:xx:xx.x: Adding to iommu group N
▶ Intel CPU 正确输出应包含:
DMAR: IOMMU enabled
✅ 只要看到 “Adding to iommu group”,即表示 IOMMU 已生效。
三、识别 Intel Arc 显卡设备
✅ 3.1 查看显卡与音频设备 PCI ID
lspci -nn | grep -i "Intel.*VGA"
lspci -nn | grep -i "Audio"
示例输出:
c7:00.0 VGA compatible controller [0300]: Intel Corporation ... [8086:e212]
c8:00.0 Audio device [0403]: Intel Corporation ... [8086:e2f7]
记下两个设备的 完整 PCI ID(如 8086:e212 和 8086:e2f7)
✅ 3.2 查看 IOMMU 分组(确认是否可安全直通)
# 查看 VGA 所在组
ls -l /sys/kernel/iommu_groups/*/devices/ | grep "c7:00.0"
查看 Audio 所在组
ls -l /sys/kernel/iommu_groups/*/devices/ | grep
code