pve下ubuntu搭建深度学习环境(nvidia,cuda,anaconda)
因为需要运行多个版本的的cuda(pytorch)切换环境很麻烦,使用docker又会导致图形化困难,所以考虑使用pve加多个ubuntu容器的方式
可以在ubuntu中使用pycharm等工具可视化调试还是比较方便的,加上训练过程中对于显卡的带宽要求不高所以考虑使用pve(exsi对硬件的兼容性比较差,而vmware直通显卡流程过于痛苦遂放弃)。
图形化安装
使用tasksel选中GNOME安装
安装后可能会出现机器自动休眠的情况需要在设置的power项中关闭自动休眠
并执行以下命令
sudo systemctl mask sleep.target suspend.target hibernate.target hybrid-sleep.target
pve直通显卡设置
启用 IOMMU
在 PVE 主机上启用 IOMMU,编辑 /etc/default/grub 文件,找到以下行:
GRUB_CMDLINE_LINUX_DEFAULT="quiet"
根据处理器类型添加相应的参数:
Intel:intel_iommu=on
AMD:amd_iommu=on
例Intel 的参数修改后应如下所示:
GRUB_CMDLINE_LINUX_DEFAULT="quiet intel_iommu=on"
然后更新 GRUB 并重启系统:
update-grub
reboot
检查 IOMMU 是否启用
在系统启动后,运行以下命令检查 IOMMU 是否启用:
dmesg | grep -e DMAR -e IOMMU
确定 GPU 和 IOMMU 组
运行以下命令查看 GPU 的 IOMMU 组:
lspci -nn
启用 VFIO 驱动
将 GPU 绑定到 VFIO 驱动。编辑 /etc/modprobe.d/vfio.conf 并添加 GPU 和相关设备的 ID,例如:
options vfio-pci ids=1002:67df,1002:aaf0
其中 1002:67df 和 1002:aaf0 是 GPU 和相关设备的 ID,可通过 lspci -nn 命令查找。
更新 initramfs
update-initramfs -u
reboot
在pve的设置直通界面
安装驱动
不要在英伟达官网下载linux的驱动编译很麻烦
sudo add-apt-repository ppa:graphics-drivers/ppa
直接选择对应版本即可
$ sudo apt install nvidia-driver-
nvidia-driver-390 nvidia-driver-470-server nvidia-driver-535
nvidia-driver-418 nvidia-driver-495 nvidia-driver-535-open
nvidia-driver-418-server nvidia-driver-510 nvidia-driver-535-server
nvidia-driver-430 nvidia-driver-510-server nvidia-driver-535-server-open
nvidia-driver-435 nvidia-driver-515 nvidia-driver-545
nvidia-driver-440 nvidia-driver-515-open nvidia-driver-545-open
nvidia-driver-440-server nvidia-driver-515-server nvidia-driver-550
nvidia-driver-450 nvidia-driver-520 nvidia-driver-55