前言

最近买了一块RTX A4000,需要在Ubuntu里跑建模仿真和深度学习,因此肯定要安装nvidia的驱动、cuda和cudnn。

因为Ubuntu对Nvidia独显的支持没有windows系统那么好,踩了不少坑,因此做个使用记录。

本地安装(使用.run文件)

1.下载驱动

英伟达驱动官网首先在官网找到独显对应的Linux驱动,然后下载到ubuntu18里

2.删除原有的英伟达驱动

# 删除之前通过apt安装的驱动
sudo apt-get remove --purge nvidia*
# 如果之前用的是.run文件安装,可以通过.run文件进行卸载
sudo ./NVIDIA-Linux-x86_64-xxx.xx.xx.run --uninstall

3.禁用nouveau驱动

sudo nano /etc/modprobe.d/blacklist.conf

在其中添加

blacklist nouveau
blacklist lbm-nouveau
options nouveau modeset=0
alias nouveau off
alias lbm-nouveau off

然后更新,重启

sudo update-initramfs -u
reboot

再查看是否禁用nouveau

lsmod | grep nouveau
# 无显示说明禁用成功

4.安装驱动

# 首先Ctrl + Alt + F7进入命令行
# 然后关闭图像界面,据他人说不关闭会出错,但我自己实测没有影响。
sudo service lightdm stop
# 添加.run文件的权限
sudo chmod  a+x NVIDIA-Linux-x86_64-xxx.xx.xx.run
sudo ./NVIDIA-Linux-x86_64-xxx.xx.xx.run --no-x-check --no-nouveau-check --no-opengl-files 

然后一路选择默认选项就安装成功了

5.测试驱动

sudo modprobe nvidia # 挂载驱动
reboot

nvidia-smi # 看到显卡信息表明安装成功

6.碰到的问题

问题描述
nvidia-smi成功显示信息,但是当使用显卡测试软件时(如gazebo),nvidia-smi显示显卡上运行的程序只有xorg。

进一步探究
打开ubuntu->settings->detail,发现GPU栏显示的是llvmpipe,表明独显并没有承担显示的工作,也就是驱动没完全装好(但是此时cuda、gpu深度学习之类的却能正常运行,非常神奇)

问题解决
见下面的在线安装

线上安装(推荐)

1.准备工作

依次实现本地安装中的 2.删除原有nvidia驱动3.禁用nouveau

2.安装驱动

打开Ubuntu中的Software&Update->Additional Drivers,找到一排可安装的Nvidia驱动,选择其一后,点击apply,开始下载和安装驱动。

下载完成后,

reboot

然后打开ubuntu->settings->detail,发现此时GPU栏显示RTX A4000,表明驱动正确安装了。

分别使用nvidia-smi和gazebo进行测试,发现的确此时gazebo等软件的显示运行在了独显上,问题解决。

Logo

更多推荐