安装概览
- 安装驱动
- 安装cuda
1 Nvidia driver安装
1.1 查看电脑GPU型号
lspci | grep -i nvidia
我的电脑显示结果如下:
即型号为Tesla K800
1.2 查询下载对应驱动
查询地址:nvidia 驱动查询下载
搜索下载runfile,得到:
注意!这是我的电脑GPU型号对应的runfile,你要根据你自己的型号下载
1.3运行安装驱动
参考文章:驱动安装
1.输入命令行
sudo gedit /etc/modprobe.d/blacklist.conf
也可以sudo vi,总之打开这个文件,在最后几行写入:
blacklist rivafb
blacklist vga16fb
blacklist nouveau
blacklist nvidiafb
blacklist rivatv
2.卸载所有安装的nvidia驱动
sudo apt-get --purge remove nvidia-*
3.关闭图像界面
sudo service lightdm stop
4.修改runfile的访问权限在(runfile所在的文件夹进行以下步骤)
sudo chmod 755 NVIDIA-Linux-x86_64-440.64.00.run
5.运行runfile
sudo ./NVIDIA-Linux-x86_64-440.64.00.run –no-x-check –no-nouveau-check –no-opengl-files
6.查看是否安装成功
nvidia-smi
7.如果此时不能nvidia-smi,则重启进入BIOS选择secure boot:unable(或者是disable)
1.4 安装时可能遇到的问题
参考文章:驱动安装遇到的问题及解决
文章很全面,我自己的遇到的是第一个错误,直接不管install就可以了。
扫描二维码关注公众号,回复:
11321493 查看本文章
2 cuda安装
2.1查看你电脑的GPU是否支持cuda
查询网址:cuda-enabled
以我的电脑为例K800是支持的
2.2 下载cuda
下载地址:cuda下载
根据你的操作系统版本选择下载cuda版本,最后一个选runfile
你可能会用到的tips:
- 查询是什么操作系统
radhat或centos存在:/etc/redhat-release 这个文件
debian或ubuntu 存在: /etc/debian_version 这个文件
Slackware存在: /etc/slackware_version 这个文件
ubuntu存在: /etc/lsb-release 这个文件 - 查询linux版本
以ubuntu为例:cat /proc/version
选择完毕后,得到命令行:
这是cuda11.0的版本,由于我要用pytorch,所以最新版本只能安装cuda10.2。命令如下:
wget http://developer.download.nvidia.com/compute/cuda/10.2/Prod/local_installers/cuda_10.2.89_440.33.01_linux.run
下载完成后,做以下确认:
- NVIDIA显卡已经正常安装
- nouveau已经禁用(无输出或nouveau 0)
lsmod | grep nouveau
- gcc已安装(输出版本号)
gcc --version
- 关闭图形界面(前面有介绍)
2.3安装cuda
运行.run文件,文件名自己替换
sudo chmod a+x cuda_10.2.89_440.33.01_linux.run
sudo ./cuda_10.2.89_440.33.01_linux.run
根据导航提示完成安装
'X’的意思就是选中。
安装成功后会显示:
Driver: Installed
Toolkit: Installed in /usr/local/cuda-10.2/
Samples: Installed in /home/USERNAME/
进一步检查安装是否成功
nvidia-smi
显示cuda版本
2.4为cuda配置环境变量
vi ~/.bashrc
在末尾添加:(版本号自己修改)
export CUDA_HOME=/usr/local/cuda-10.2
export LD_LIBRARY_PATH=/usr/local/cuda-10.2/lib64:$LD_LIBRARY_PATH
export PATH=/usr/local/cuda-10.2/bin:$PATH
保存并退出。
让代码生效:
source ~/.bashrc
或
sudo reboot
查看是否成功:
nvcc -V
显示以下结果则成功:
或也可通过查看samples运行是否成功:
#编译并测试设备 deviceQuery:
cd /usr/local/cuda-10.2/samples/1_Utilities/deviceQuery
sudo make
./deviceQuery
#编译并测试带宽 bandwidthTest:
cd ../bandwidthTest
sudo make
./bandwidthTest
都显示result=PASS则成功。