当前位置: 首页 > news >正文

Proxmox VE 8.4 显卡直通完整指南:NVIDIA 2080 Ti 实战

背景:

PCIe Passthrough 技术允许虚拟机直接访问物理GPU设备,绕过宿主机系统,从而获得接近原生性能的图形处理能力. 参照:从Proxmox VE开始:安装与配置指南。在R740服务器完成了proxmox的安装,并且安装了一张2080ti 魔改22g显存的的显卡。现在我需要将显卡直接直通到一台vm实例上面。

验证系统信息

系统版本与显卡信息如下:

cat /etc/os-release
pveversion -v 

****输出确认当前proxmox server 是基于debian 12 版本的 8.4.0 proxmox操作系统 :

显卡信息 2080ti的信息:

 lspci -nnk|grep "NVIDIA"

下面就就详细记录一下具体过程!

请注意:当前服务器cpu为intel处理器,amd处理器配置有些许不同,请注意查找一下相关资料…

Proxmox VE 8.4 显卡直通完整指南:NVIDIA 2080 Ti 实战

检查和启用IOMMU支持

IOMMU(Input-Output Memory Management Unit)是硬件辅助的虚拟化技术,为PCI设备直通提供必要的内存管理和隔离功能。

修改GRUB配置

# 备份原始配置
cp /etc/default/grub /etc/default/grubold
# 编辑GRUB配置
vi /etc/default/grub

编辑/etc/default/grub文件,并在GRUB_CMDLINE_LINUX_DEFAULT行中添加以下内容(使用默认,pve版本为8.4):

# 修改 GRUB_CMDLINE_LINUX_DEFAULT 配置为GRUB_CMDLINE_LINUX_DEFAULT="quiet intel_iommu=on iommu=pt initcall_blacklist=sysfb_init pcie_acs_override=downstream"#注意:pve  7.2 以前版本使用
GRUB_CMDLINE_LINUX_DEFAULT="quiet intel_iommu=on iommu=pt video=efifb:off,vesafb:off pcie_acs_override=downstream"

参数说明(deepseek总结的参数定义,可以个人查缺补漏):

**参数说明 **:

  • **intel_iommu=on **: 启用Intel平台的IOMMU支持
  • **iommu=pt **: 仅对直通设备启用IOMMU,减少性能开销
  • **initcall_blacklist=sysfb_init **: 防止宿主机占用显卡帧缓冲区
  • **pcie_acs_override=downstream **: 解决某些PCIe设备的ACS限制问题

**注意 **:对于AMD平台,需将 **intel_iommu=on **替换为 **amd_iommu=on **

更新grub配置:

update-grub

添加必要的的内核模块

打开文件 /etc/modules ,新增以下4行内容

vfio
vfio_iommu_type1
vfio_pci
vfio_virqfd

**reboot **重启 proxmox 主机

验证IOMMU是否启用

待服务器启动后,登录服务器验证IOMMU是否启用:

dmesg | grep -E "DMAR|IOMMU"

验证并 配置VFIO

验证VFIO模块:

dmesg | grep -i vfio

查看显卡id:

root@proxmox1:~# lspci -nn | grep NVIDIA
3b:00.0 VGA compatible controller [0300]: NVIDIA Corporation TU102 [GeForce RTX 2080 Ti Rev. A] [# 添加PCI设备
echo "options vfio-pci ids=10de:1e07 disable_vga=1" > /etc/modprobe.d/vfio.conf
] (rev a1)
3b:00.1 Audio device [0403]: NVIDIA Corporation TU102 High Definition Audio Controller [10de:10f7] (rev a1)
3b:00.2 USB controller [0c03]: NVIDIA Corporation TU102 USB 3.1 Host Controller [10de:1ad6] (rev a1)
3b:00.3 Serial bus controller [0c80]: NVIDIA Corporation TU102 USB Type-C UCSI Controller [10de:1ad7] (rev a1)

得到显卡的id是:10de:1e07(注意这里的10de:10f7,10de:1ad6 ,10de:1ad7应该都加上去,我这里就用显卡功能无所谓了 )

将设备ID添加到 vfio.conf:

# 添加PCI设备
echo "options vfio-pci ids=10de:1e07 disable_vga=1" > /etc/modprobe.d/vfio.conf

注意请一定注意这里的将设备Id添加到vfio.conf操作。往上很多笔记遗忘了该部分!

验证是否支持 **中断重映射 **

dmesg | grep 'remapping'

屏蔽显卡驱动 :

在proxmox主机屏蔽掉显卡的驱动:

echo "# NVIDIA" >> /etc/modprobe.d/blacklist.conf 
echo "blacklist nouveau" >> /etc/modprobe.d/blacklist.conf 
echo "blacklist nvidia" >> /etc/modprobe.d/blacklist.conf 
echo "blacklist nvidiafb" >> /etc/modprobe.d/blacklist.conf
echo "blacklist nvidia_drm" >> /etc/modprobe.d/blacklist.conf
echo "" >> /etc/modprobe.d/blacklist.conf

其他有用的配置

  • 允许不安全的中断
echo "options vfio_iommu_type1 allow_unsafe_interrupts=1" > /etc/modprobe.d/iommu_unsafe_interrupts.conf

  • 为 NVIDIA 卡添加稳定性修复和优化
echo "options kvm ignore_msrs=1 report_ignored_msrs=0" > /etc/modprobe.d/kvm.conf

更新内核引导文件

更新内核引导文件并重启宿主机:

update-initramfs -k all -u
reboot

验证是否成功:

lspci -nn | grep NVIDIA
lspci -nnk -s 3b:00

正常直通时,输出应显示内核驱动为 **vfio-pci ****,如果未显示则需要执行 **验证并配置VFIO部分。

vm实例添加显卡

等待宿主机启动后完成如下操作!

VM实例添加显卡:

这里使用了登录web控制台增加pci设备的方式,当然也可以shell登录宿主机使用命令添加的方式!

以VM实例301为例:点击vm 实例-硬件-添加-PCI设备-原始设备,找到2080TI设备选中,添加:

启动虚拟机实例:

确认当前vm实例是关闭状态,启动 VM实例:

注意,由于proxmox reboot操作过,并且我的vm实例不是开机自启动,这里可以操作后直接启动,如果是正在运行中的实例,请关闭实例后启动.

验证vm实例挂载显卡成功:

登录vm 301实例,使用如下命令确认vm实例成功挂载了显卡设备:

lspci | grep -i vga
lspci -nn | grep NVIDIA

ok到这里 显卡就完成了 显卡直通的相关操作!下一章节给vm实例安装显卡驱动与cuda!

相关文章:

  • 深度学习与 PyTorch 基础
  • WindowsPE文件格式入门10.TLS表
  • Day108 | 灵神 | 合并两个有序链表
  • Matlab自学笔记
  • 网工_UDP协议
  • JavaWeb学习打卡-Day7-正向代理、反向代理、Nginx
  • C++--入门基础
  • JVM 如何使用性能分析工具定位代码中的性能问题?
  • 基于bert的情感分析程序
  • 【安装指南】DevC++的安装和使用(超级详细)
  • 【Linux】Linux奇技淫巧
  • 从0开始建立Github个人博客(hugoPaperMod)
  • ubuntu的libc 库被我 sudo apt-get --reinstall install libc6搞没了
  • AI人工智能的接入和使用
  • Matplotlib核心课程-2
  • 【符号调制技术与载波调制技术】
  • Controller层接收参数方式
  • Java学习手册:Spring Boot 自动配置与快速开发
  • RISCV的smstateen-ssstateen扩展
  • 方案精读:虚拟电厂“七问七答”详解【附全文阅读】
  • 人民日报和音:汇聚和平与发展的全球南方力量
  • 竞彩湃|德甲保级白热化,都灵主帅直面旧主
  • 一周文化讲座|那些年的年青人
  • 学有质量、查有力度、改有成效,广大党员干部落实中央八项规定精神
  • 美航母撞船后又遇战机坠海,专家:长时间作战部署疲于奔命是主因
  • 济南高新区一季度GDP增长8.5%,第二产业增加值同比增长14.4%