1. 程式人生 > 其它 >搭建cuda,cudnn,pytorch環境

搭建cuda,cudnn,pytorch環境

更換gcc版本

sudo apt install gcc-10
sudo rm /usr/bin/gcc
sudo ln -s /usr/bin/gcc-10 /usr/bin/gcc

安裝NVIDIA驅動

禁用圖形介面

sudo systemctl set-default multi-user.target
sudo reboot

開機後按 ctrl + alt + f1進入命令列

安裝Driver

參考這篇文章

https://www.cnblogs.com/chua-n/p/13208398.html

解除安裝驅動:

sudo apt-get --purge remove nvidia-*
sudo apt-get --purge remove "*nvidia*"

https://www.nvidia.cn/Download/index.aspx?lang=cn 下載對應的驅動

安裝包裝包即可。

接著就可以用nvidia-smi檢視顯示卡

可以看到我已經安裝好了驅動Driver-470

這個cuda-version值得是我能夠使用的cuda最高版本,11.4可以用,那麼11.1也可以用。

安裝CUDA

解除安裝原來的cuda:

sudo apt autoremove cuda
sudo apt --purge remove "*cublas*" "cuda*"

下載cuda11.1(run版本,而不是deb版本),和對應的cudnn

安裝cuda11.1需要滿足:

  1. gcc >=9.3.0
  2. 有root許可權

注意!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!


sudo bash cudaXXX.run之後會有兩次互動的選擇:

1)填accept表示接受協議

2)自選安裝元件,我們一定要取消安裝Driver,因為Driver不允許降級,如果不取消安裝Driver會導致安裝失敗。

報錯:

Executing NVIDIA-Linux-x86_64-455.23.05.run --ui=none --no-questions --accept-license --disable-nouveau --no-cc-version-check --install-libglvnd 2>&1
[INFO]: Finished with code: 256

安裝完成之後要配置環境

此時/usr/local/有兩個cuda資料夾,一個是cuda一個是cuda-11.1,cuda就是cuda-11.1的硬連結。

新增環境變數

export PATH=/usr/local/cuda-11.1/bin:$PATH
export LD_LIBRARY_PATH=/usr/local/cuda-11.1/lib64:$LD_LIBRARY_PATH

安裝CUDNN

選擇 cudnn library for linux

下載壓縮檔案後,解壓縮得到一個cuda資料夾,直接拷貝檔案就行了

sudo cp cuda/include/cudnn.h /usr/local/cuda/include/
sudo cp cuda/lib64/libcudnn* /usr/local/cuda/lib64/
sudo chmod a+r /usr/local/cuda/include/cudnn.h /usr/local/cuda/lib64/libcudnn*

接著安裝deb包,

下載

sudo dpkg -i xxx.deb 進行安裝:

安裝順序: libcudnn8_8 libcudnn8-dev libcudnn8-samples ,這是上面三個deb檔案的字首。

安裝之後進行測試:

cp -r /usr/src/cudnn_samples_v8/ ~ 
cd ~/cudnn_samples_v8/mnistCUDNN/ 
make clean && make 
./mnistCUDNN

如果出現 fatal error: FreeImage.h ,執行

sudo apt-get install libfreeimage3 libfreeimage-dev

再一次執行:

make clean && make 
./mnistCUDNN

輸出test passed!代表可以正常使用cudnn

裝pytorch

執行

conda install pytorch torchvision torchaudio cudatoolkit=11.1 -c pytorch -c nvidia

測試:

import torch
torch.cuda.is_available()

輸出True,表示有gpu

結束

恢復圖形介面

sudo systemctl set-default graphical.target
sudo reboot

結語:

按照這樣方式即可搭建cuda環境。