AI服务器vGPU配置:让多台虚拟机共享一块物理GPU

vGPU 不是把物理 GPU 直接直通给一台虚拟机,而是让多台虚拟机按显存切片共享同一块物理 GPU。
动手前必须先确认显卡型号在 NVIDIA vGPU 支持列表内,并且宿主机已经装好虚拟化平台。
下文以 KVM/libvirt 环境为例,说明从条件核对到虚拟机验证的完整流程。

先核对硬件和软件前提

不是所有 NVIDIA GPU 都支持 vGPU。
消费级 GeForce 卡通常不支持,数据中心卡如 A100、H100 对 vGPU 的支持情况也要按具体型号和驱动版本查官方支持矩阵。
你需要确认三件事:

  • 物理 GPU 型号出现在当前 vGPU 版本的 supported GPU 列表中;
  • 宿主机操作系统版本与 vGPU Manager 驱动匹配;
  • 虚拟化平台已启用 IOMMU,KVM 能识别 GPU 的 PCI 地址。

在宿主机上先确认 GPU 和 IOMMU 状态:

lspci | grep -i nvidia
# 输出中应能看到 GPU 的 PCI 地址,如 3b:00.0

dmesg | grep -e DMAR -e IOMMU
# 看到 DMAR: IOMMU enabled 才表示 IOMMU 已开启

如果 IOMMU 未开启,
需要在 GRUB 启动参数中加入 intel_iommu=on iommu=pt(Intel 平台)或 amd_iommu=on iommu=pt(AMD 平台),
更新 grub 后重启再复查。

宿主机侧安装 vGPU Manager

vGPU 的宿主机驱动和普通 GPU 驱动不是同一个包。
你需要从 NVIDIA 许可渠道获取对应版本的 vGPU Manager 驱动,安装后确认内核模块加载成功:

# 安装 vGPU Manager 驱动包(文件名以实际下载为准)
./NVIDIA-Linux-x86_64-<版本>-vgpu-kvm.run --silent

# 检查模块
lsmod | grep nvidia
nvidia-smi

nvidia-smi 能正常输出 GPU 信息,且驱动版本与 vGPU 版本对应,宿主机侧才算就绪。
此时不要急着给虚拟机分配 vGPU,先在 virt-manager 或 virsh 中确认 GPU 的 PCI 设备能被 libvirt 识别。

为虚拟机分配 vGPU 类型

在 libvirt 中,vGPU 通过 的 mdev 方式挂载。
先列出宿主机上可用的 vGPU 类型:

# 查看 mdev 设备
ls /sys/bus/pci/devices//mdev_supported_types/

每个目录对应一种 vGPU 规格,例如 nvidia-,数字大小对应显存切片。
编辑虚拟机 XML,加入类似配置:


  
    

UUID 需要先通过 uuidgen 生成,然后写入对应类型的 create 文件:

echo  > /sys/bus/pci/devices//mdev_supported_types/nvidia-/create

启动虚拟机后,在虚拟机内执行 lspci | grep -i nvidia 应能看到 NVIDIA 设备。

虚拟机内安装 Guest 驱动

虚拟机里的驱动要和宿主机 vGPU Manager 版本对应,否则会出现设备识别异常或驱动加载失败。
在虚拟机内安装对应的 vGPU Guest 驱动,安装完成后运行:

nvidia-smi

能列出 vGPU 型号和显存容量,说明虚拟机侧配置成功。
如果 nvidia-smi 报 “No devices were found”,优先检查宿主机 vGPU Manager 版本与 Guest 驱动版本是否匹配,以及虚拟机 XML 中 mdev 地址是否写对。

常见坑和验证方式

  • 驱动版本不匹配:宿主机 vGPU Manager 与虚拟机 Guest 驱动主版本不一致时,虚拟机内可能黑屏或驱动拒绝加载。升级前先查兼容表。
  • IOMMU 未生效:忘记更新 grub 或未重启,dmesg 中看不到 IOMMU enabled,vGPU 无法分配。
  • 显存切片超分:同一块 GPU 创建的 vGPU 实例总显存不能超过物理显存,规划时留出余量。
  • 许可证问题:部分 vGPU 功能需要 NVIDIA 授权服务,未配置许可时性能或功能可能受限。

验证时建议在虚拟机内跑一次 nvidia-smi -q 查看 vGPU 类型和显存,并实际运行一个轻量 CUDA 程序确认计算可用。
多台虚拟机同时启动后,再回宿主机执行 nvidia-smi 查看各实例占用,确认没有实例创建失败。

整个流程的关键顺序是:先确认硬件支持,再装宿主机 vGPU Manager,然后创建 mdev 并挂给虚拟机,最后在虚拟机内装匹配的 Guest 驱动。
任何一步版本对不上,后面的验证都会失败。

分享到:
上一篇
AI服务器GPUDirect配置:让GPU绕过CPU直接读网卡
下一篇
AI服务器GPU共享配置:用MIG把一块物理卡切给多任务使用
1
系统公告

关于香港云优质服务器IP地址更换的通知

尊敬的客户: 因原IP运营商大幅涨价,为避免成本转嫁至用户,我司决定更换IP服务商。本次更换后,您的续费价格将保持不变,且新IP网络质量与服务标准不受影响。新IP已分配至后台,即刻生效(更换的新IP都是香港原生IPv4)。 涉及 IP 段: 45.192.x.x 旧 IP 停用时间: 2026 年 12 月 1 日
服务中心
客服
在线客服
24小时为您服务
咨询
联系我们
联系我们,为您的业务提供专属服务。
24/7 技术支持
如果您遇到寻求进一步的帮助,请过工单与我们进行联系。
24/7 即时支持
泽御云
售前客服
泽御云
泽御云
售后客服
泽御云
技术支持
评价
您对当前页面的整体感受是否满意?
😞
非常不满意
😕
不满意
😐
一般
🙂
满意
😊
非常满意