我使用的是Linux桌面是Ubuntu18.04.4LTS
显卡是NVIDIA的GeForce MX250
查到自己的显卡型号,可以去官网上检查此型号的显卡是否支持CUDA
附:检查自己计算机显卡型号
计算机-管理-系统工具-设备管理器-显示适配器
查到信号可以去官网看看是否支持CUDA
支持CUDA的NVIDIA-GPU列表
不在列表上也不一定不支持CUDA加速,最便捷的查看方法就是安装GPU-Z
具体方法
我下载的cuda版本是10.2.89_440.33.01
这意味着所需的NVIDIA显卡驱动版本至少是440以上的
CUDA下载地址
NVIDIA显卡驱动下载地址
这一步需要修改blacklist.config,这玩意是只读的,需要用修改属性命令:
sudo chmod 666 /etc/modprobe.d/blacklist.conf
用gredit编辑器打开blacklist.config
sudo gedit /etc/modprobe.d/blacklist.conf
在文件最末添加如下内容:
blacklist vga16fb
blacklist nouveau
blacklist rivafb
blacklist rivatv
blacklist nvidiafb
执行如下命令,更新系统,禁用nouveau
sudo update-intramfs -u
重启,命令如下:
sudo reboot
关闭secure boot方法
重启完成后,在终端输入如下命令检查是否禁用nouveau成功,无输出,表示禁用成功
lsmod | grep nouveau
按ctrl+alt+F1~F6进入tty1 ~ 6任意一个命令行界面均可
输入用户名密码登录
在命令行执行如下命令,关闭图形界面(否则后面可能出错)
sudo service lightdm stop
或者
sudo telinit 3
卸载原有驱动:
sudo apt-get remove nvidia-*
sudo chmod a+x NVIDIA-Linux-x86_64-440.82.run
sudo ./NVIDIA-Linux-x86_64-440.82.run -no-opengl-files
除非你的计算机只有一个集成显卡,才不用加-no-opengl-files,否则一般的双显卡会出现循环登陆的问题
-no-x-check:安装驱动时关闭X服务
-no-nouveau-check:安装驱动时禁用nouveau
-no-opengl-files:只安装驱动文件,不安装OpenGL文件
modprobe nvidia
nvidia-smi
出现如下输出,则安装成功
如果出现Error:Unable to load the ‘nvidia-drm’ kernel module .
出现这个问题最有可能的原因是你安装的Ubuntu是UEFI模式启动的,但是在BIOS中却打开了Security BOOT选项。正确做法是禁用该选项,方法见上文
sudo sh cuda_10.2.89_440.33.01_linux.run --no-opengl-libs
运行如下命令打开个人资料文件夹
sudo gedit /etc/profile
在末尾添加
export PATH=/usr/local/cuda-10.2/bin:$PAth
export LD_LIBRARY_PATH=/usr/local/cuda-10.2/lib64$LD_LIBRARY_PATH
保存,重启电脑然后进入终端测试
cd /usr/local/cuda-10.2/samples/1_Utilities/deviceQuery
sudo make
./deviceQuery
如果result=PASS,则安装成功,否则失败,可能是环境未配置好或者cuda版本与驱动版本不兼容
如需卸载重装,执行如下命令
cd /usr/local/cuda/bin
sudo ./uninstall_cuda_10.2.pl
用nvcc编译.cu文件时若出现ImportError: libcudart.so.8.0: cannot open shared object file: No such file or directory这样的错误
首先检查/usr/local/cuda-8.0/lib64目录,看看libcudart.so.8.0是否存在,如果不存在,则先正确安装cuda。如果确定cuda已经存在,这个问题的出现于Linux的ldconfig命令有关
解决方法:
sudo ldconfig /usr/local/cuda-10.2/lib64