安裝概覽
- 安裝驅動
- 安裝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就可以了。
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則成功。