Ubuntu18.04 RTX2070 顯卡驅動、Cuda、cudnn和Pytorch深度學習環境配置——親測可用

這篇博文的主要目的是記錄我在Ubuntu18.04下配置深度學習環境的過程,方便自己以後配置的需求,也供大家參考,減少跳坑

電腦環境說明:

  • 系統:Ubuntu18.04 LTS
  • 顯卡:RTX 2070 Super
  • cuda:10.1
  • cudnn:7.6.5

說明:
一些重要的步驟安裝完成後都提供了測試方法,最好進行測試,確認安裝成功,以免在後續的安裝和使用過程中出現問題。

1、依賴項安裝

$ sudo apt-get update
$ sudo apt-get upgrade

$ sudo apt-get install build-essential cmake unzip pkg-config libxmu-dev libxi-dev libglu1-mesa libglu1-mesa-dev libjpeg-dev libpng-dev libtiff-dev libavcodec-dev libavformat-dev libswscale-dev libv4l-dev libxvidcore-dev libx264-dev libgtk-3-dev libopenblas-dev libatlas-base-dev liblapack-dev gfortran libhdf5-serial-dev python3-dev python3-tk python-imaging-tk

2、顯卡驅動安裝

查看自己的顯卡支持的驅動版本:
網站1,這個比較全
網站2:GeForce顯卡

我一般是直接在軟件和更新-》附加驅動中選擇系統推薦的顯卡驅動進行安裝即可:

在這裏插入圖片描述
勾選需要的顯卡驅動版本之後,點擊應用更改後,會自動聯網下載該版本驅動進行安裝。

另一種方法:
如果你想安裝的驅動版本附加驅動中沒有列出,你可以終端自行安裝:

$ sudo add-apt-repository ppa:graphics-drivers/ppa
$ sudo apt-get update

查看已經下載的驅動版本:

sudo apt-cache search nvidia-*

進行驅動安裝:

$ sudo apt install nvidia-driver-396
or
$ sudo apt install nvidia-396

然後進行重啓,不重啓直接執行nvidia-smi可能會報錯:

$ sudo reboot now

方法三:
驅動網站下載最新版驅動程序文件,一般是.run格式文件,然後執行:

sudo chmod a+x NVIDIA-*.run

然後最好在非圖形化界面下進行安裝,可以靈活設置安裝選項,避免安裝完後系統重複登錄:

測試

安裝顯卡驅動後一般需要重啓電腦,然後打開一個終端,執行:

nvidia-smi

會出現如下結果:

Mon Apr  6 09:49:06 2020       
+-----------------------------------------------------------------------------+
| NVIDIA-SMI 430.50       Driver Version: 430.50       CUDA Version: 10.1     |
|-------------------------------+----------------------+----------------------+
| GPU  Name        Persistence-M| Bus-Id        Disp.A | Volatile Uncorr. ECC |
| Fan  Temp  Perf  Pwr:Usage/Cap|         Memory-Usage | GPU-Util  Compute M. |
|===============================+======================+======================|
|   0  GeForce RTX 2070    Off  | 00000000:01:00.0  On |                  N/A |
|  0%   51C    P8    33W / 175W |    981MiB /  7979MiB |      1%      Default |
+-------------------------------+----------------------+----------------------+
                                                                               
+-----------------------------------------------------------------------------+
| Processes:                                                       GPU Memory |
|  GPU       PID   Type   Process name                             Usage      |
|=============================================================================|
|    0      1273      G   /usr/lib/xorg/Xorg                            24MiB |
|    0      1350      G   /usr/bin/gnome-shell                          50MiB |
|    0      1623      G   /usr/lib/xorg/Xorg                           475MiB |
|    0      1798      G   /usr/bin/gnome-shell                         256MiB |
|    0      4371      G   ...uest-channel-token=17005436335969556960    73MiB |
|    0      8532      G   ...quest-channel-token=4090069519898305589    98MiB |
+-----------------------------------------------------------------------------+

就說明成功安裝好顯卡驅動了。

3、cuda安裝

注意下載與GPU驅動版本對應的cuda版本。我的RTX2070需要的是cuda10.0以上的cuda,我下載的是cuda 10.1。

cuda 10.0版本已經不需要更改系統gcc版本爲gcc 6的版本了,直接下載run文件(我一般下載run文件,可以比較靈活的進行配置,當然下載deb文件也是可以的),下載界面都會直接提示安裝方法:

在這裏插入圖片描述
所有版本的cuda下載地址爲:https://developer.nvidia.com/cuda-toolkit-archive

下載完成後執行:

sudo chmod +x cuda_10.1.168_418.67_linux.run
sudo sh cuda_10.1.168_418.67_linux.run

需要等待一段時間,然後出現界面:

在這裏插入圖片描述
輸入accept,回車,出現界面:

在這裏插入圖片描述
這個界面要注意,因爲我們之前已經安裝過顯卡驅動了,因此此處應該取消勾選Driver,方法是使用上下方向鍵選擇Driver,然後回車即可,最後選到Install,進行安裝。

如果沒有取消勾選Driver,則在安裝完成的最後會提示:

Completed with errors. See log at /var/log/cuda-installer.log for details

安裝完成後會提示Successfully。

cuda卸載方法

如果你之前安裝過cuda其他版本,或者安裝cuda最後出現了失敗,在重新安裝之前最好卸載之前安裝的cuda,卸載方法網上有很多,其實cuda自帶了卸載文件,該卸載文件爲/usr/local/cuda/bin/cuda-uninstaller,所以你只需要cd到該路徑,執行該文件即可卸載乾淨cuda了:

$ cd /usr/local/cuda/bin
$ sudo ./cuda-uninstaller

對於cuda 9.*版本的cuda,卸載文件是/usr/local/cuad/bin/uninstall_cuda_9.0.pl,執行方法同上。
卸載完cuda之後,因爲可能還裝了cudnn,所以cuda的文件夾可能還沒刪除乾淨,執行:

sudo rm -rf cuda-9.0

即可,請注意修改爲你的實際cuda版本文件夾名。

修改bashrc文件

打開bashrc文件,末尾加入:

# NVIDIA CUDA Toolkit
export PATH=/usr/local/cuda-10.1/bin:$PATH
export LD_LIBRARY_PATH=/usr/local/cuda-10.1/lib64

測試

打開一個終端,輸入:

source ~/.bashrc
nvcc -V

出現結果:

nvcc: NVIDIA (R) Cuda compiler driver
Copyright (c) 2005-2019 NVIDIA Corporation
Built on Fri_Feb__8_19:08:17_PST_2019
Cuda compilation tools, release 10.1, V10.1.105

說明安裝成功。

4、cudnn安裝

下載地址:https://developer.nvidia.com/rdp/cudnn-download
需要註冊,可以用QQ登錄。注意下載與自己的cuda版本對應的cudnn版本。
選擇如下文件:
在這裏插入圖片描述
cudnn的安裝其實就是複製一些庫文件和頭文件到cuda中:
下載後解壓縮,然後複製文件即可:

tar -zxf cudnn-10.1-linux-x64-v7.6.5.32.tgz
cd cuda
sudo cp -P lib64/* /usr/local/cuda/lib64/
sudo cp -P include/* /usr/local/cuda/include/

5、Pytorch安裝

參考網址:https://pytorch.org/
在這裏插入圖片描述
安裝命令:

pip3 install torch torchvision

如果你沒有pip3,需要進行安裝:

sudo apt-get install python3-pip

測試

測試之前需要重啓一下電腦,然後執行:

python
import torch
print(torch.cuda.is_available())

返回爲True,則說明Pytorch此時已經能夠調用GPU了。

說明

如果你在使用Pytorch過程中出現類似:

RuntimeError: CUDA error: invalid argument

的錯誤,建議你安裝Pytorch的時候選擇安裝包含cuda編譯的版本,安裝命令如下:

pip install torch==1.3.0+cu100 torchvision==0.4.1+cu100 -f https://download.pytorch.org/whl/torch_stable.html

上述命令就能下載支持cuda10.0的Pytorch,其中cu100表示cuda 10.0。

其他完整版本:

torch版本:

from versions: 0.1.2, 0.1.2.post1, 0.1.2.post2, 0.3.0.post4, 0.3.1, 0.4.0, 0.4.1, 1.0.0, 1.0.1, 1.0.1.post2, 1.1.0, 1.2.0, 1.2.0+cpu, 1.2.0+cu92, 1.3.0, 1.3.0+cpu, 1.3.0+cu100, 1.3.0+cu92, 1.3.1, 1.3.1+cpu, 1.3.1+cu100, 1.3.1+cu92, 1.4.0, 1.4.0+cpu, 1.4.0+cu100, 1.4.0+cu92, 1.5.0, 1.5.0+cpu, 1.5.0+cu101, 1.5.0+cu92

torchvision版本:

from versions: 0.1.6, 0.1.7, 0.1.8, 0.1.9, 0.2.0, 0.2.1, 0.2.2, 0.2.2.post2, 0.2.2.post3, 0.3.0, 0.4.0, 0.4.0+cpu, 0.4.0+cu92, 0.4.1, 0.4.1+cpu, 0.4.1+cu100, 0.4.1+cu92, 0.4.2, 0.4.2+cpu, 0.4.2+cu100, 0.4.2+cu92, 0.5.0, 0.5.0+cpu, 0.5.0+cu100, 0.5.0+cu92, 0.6.0, 0.6.0+cpu, 0.6.0+cu101, 0.6.0+cu92

也可以從網站:https://download.pytorch.org/whl/cu100/torch_stable.html
直接下載wheel文件進行pip install安裝,要注意cp35表示支持python3.5版本,版本要對應上纔行。

參考

  1. https://www.pyimagesearch.com/2019/01/30/ubuntu-18-04-install-tensorflow-and-keras-for-deep-learning/
  2. https://blog.csdn.net/qq_41931821/article/details/89239388
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章