Ubuntu16.04安装NVIDIA显卡(RTX20系列)驱动+CUDA10.0+cudnn+Pytorch1.1.0
Ubuntu16.04,GPU: Geforce RTX 2070-Super(本博客是顯卡驅動和cuda分開安裝的教程).
1. Ubuntu16.04安裝NVIDIA顯卡驅動
1. 下載顯卡驅動.run文件
1.1 首先去NVIDIA官網https://www.nvidia.com/Download/index.aspx下載相應型號GPU的顯卡驅動,博主是GeForce RTX 2070-super型號,選擇linux版,然后其它根據你自己的選擇。
?1.2 將下載后的 .run驅動文件放在一個容易記住、方便操作的位置,博主放在了home目錄的Documents文件夾下,完整路徑是 ~/Documents ,如下圖,千萬記住文件路徑以及文件名,安裝時需要。
?
2. 禁用系統為我們安裝好的nouveau第三方顯卡驅動
2.1 查看nouveau驅動是否在運行
lsmod | grep nouveau?如下圖有輸出表明在運行,需要禁止
2.2?打開blacklist.conf配置文件?
sudo gedit /etc/modprobe.d/blacklist.conf2.3?在文件末尾加上如下兩行?
blacklist nouveau options nouveau modeset=02.4 nouveau安裝在系統內核中,需要更新系統內核
sudo update-initramfs -u如下圖則更新完成
?
2.5 電腦重啟,然后查看nouveau是否已禁止運行?
reboot lsmod | grep nouveau?如下圖,沒有輸出代表禁止成功
?
?
3.? 安裝顯卡驅動
3.1 快捷鍵【CTRL】+【ALT】+【F1】進入文本命令行模式,進入后輸入用戶名和密碼登錄
3.2 登錄后,先關閉顯示服務
sudo service lightdm stop3.3 進入驅動 .run文件所在目錄?(前面1.2提到的位置)
cd Documents此時輸入“ls”可查看該目錄下的文件,可以看到顯卡驅動 .run文件也在其中?
3.4?安裝驅動
sudo ./NVIDIA-Linux-x86_64-430.26.run -no-opengl-files① 可以在輸入部分文件名按下【Tab】鍵,可以自動補全,就不用一個個字符輸,如果不可以,那只能一個個輸入了。?
② -no-opengl-files參數表示在安裝驅動時不安裝OpenGL,因為安裝后可能會有循環登錄的問題?
3.5 安裝過程提示?
①? 驅動版本預安裝腳本失敗,這個沒影響,選擇“繼續安裝”(有點空白的選項是當前選中的那個,黃色箭頭那個,后面的安裝過程選項也是),如下圖。
②? 提示不會安裝32位兼容版,選擇“OK”繼續。如果你想裝,按照提示重新安裝,帶上參數“--compat32-libdir”
③? 是否安裝NVIDIA的X配置工具,選擇“No”,我們不需要自動更新X配置
④? 安裝完成,提示我們更新xorg.conf文件
這個其實就是提示我們安裝上面一步的NVIDIA的X配置工具,不用管,直接”OK“安裝完成。等你安裝好可以進入提示提到的“/usr/share/doc/NVIDIA_GLX-1.0/“目錄下打開README.txt文件搜索xorg.conf,可以仔細看看說明,說明如下圖。
⑤ 最后, 我們打開之前關閉的顯示服務,此時會自動返回圖形界面
3.6? 登錄圖形界面后打開終端,輸入以下兩個命令查看是否安裝成功,結果如圖所示,顯示了顯卡驅動版本430.26,以及顯存等信息,代表安裝成功。
cat /proc/driver/nvidia/version nvidia-smi?
2. 安裝CUDA
2.1 下載cuda
先通過?https://docs.nvidia.com/cuda/cuda-toolkit-release-notes/index.html?官網查看cuda和顯卡驅動的版本對應表(你的驅動版本可以大于CUDA要求的驅動版本,但不能小于)。
看完對應表后就可以下載cuda了,但是官網首頁的CUDA一般是最新版,我們可能需要下載舊版本,https://developer.nvidia.com/cuda-toolkit-archiv,進入這個網址下載可以看到舊版本列表,如下圖所示。
點擊相應版本,進入下圖界面,選擇Linux,系統架構X86_64位,Ubuntu16.04版本,然后選擇runfile(local)是一個完整的包,deb(network)得半途從官網下載一些組件(筆者下載runfile)。
2.2 安裝cuda
① 好多博客都是要求先關閉nouveau,因為和顯卡驅動沖突,但是我們這是僅僅安裝cuda,顯卡驅動已經安裝過了,所以nouveau應該已經是被禁用的(反正筆者的已經是禁用的,沒有任何輸出),如果你沒禁用那就禁用一下吧,用以下命令查看nouveau是否被禁用。
② 好多博客也是要求進入文本用戶界面進行安裝(其實是顯卡驅動和cuda一起安裝才需要),然后筆者由于文本用戶界面登錄不了(據說是系統kenerl太高),于是嘗試直接在圖像用戶界面安裝,結果安裝成功。
1.直接終端在cuda.run文件目錄打開終端,運行以下命令進行安裝
sudo sh cuda_10.0.130_410.48_linux.run然后一直回車直到問你是否同意用戶協議(Do you accept the previously read EULA?),此時有一系列問題,問題回答如下圖,然后安裝成功。
解釋以下 ① Do you accept the previously read EULA?(是否同意用戶協議) 選擇 accept ② Install NVIDIA Accelerated Graphics Driver for Linux-x86_64 410.48? 輸入 n,因為我們已經安裝顯卡驅動了,現在不用安裝。 ③ Install the CUDA 10.0 Toolkit? 輸入 y ④ Enter Toolkit Location(選擇安裝路徑,默認/usr/local/cuda-10.0就行) 輸入 回車 ⑤ Do you want to install a symbolic link at /usr/local/cuda? 輸入 y ⑥ Install the CUDA 10.0 Samples? 輸入 n,因為cuda自帶的,筆者手誤選了y。安裝完成后,底部有一些注意事項,如圖
上圖提示不完全安裝,沒有安裝cuda驅動(因為我們已經安裝了顯卡驅動,而且版本高于cuda10.0最低版本的要求,不用管),此時使用 nvcc -V 是查看不到cuda信息的,因為上圖提示PATH和LD_LIBRARY_PATH需要確定,在~/.bashrc加入圖中那兩行命令并保存source一下,結果可查看到cuda版本,如下圖。
sudo gedit ~/.bashrc #(打開bashrc文件) 在bashrc文件底部加入以下兩行export PATH=/usr/local/cuda-10.0/bin:$PATH export LD_LIBRARY_PATH=/usr/local/cuda-10.0/lib64:$LD_LIBRARY_PATH保存退出,然后編譯一下bashrc文件。 source ~/.bashrc #(編譯bashrc文件,更新系統設置)如果還想驗證一下cuda是否正常工作,可以輸入以下命令驗證,結果都是result=pass就是安裝成功。
cd /usr/local/cuda-10.0/samples/1_Utilities/deviceQuery make ./deviceQuery cd ../bandwidthTest make ./bandwidthTest3. 安裝cudnn
去官網?https://developer.nvidia.com/rdp/cudnn-archive?選擇相應版本點擊,然后在展開的頁面選擇“cudnn library for linux”下載cudnn包,不要選擇“cudnn library for Ubuntu16.04”,下載下來還是Windows的安裝包。
下載后解壓得到cuda文件夾
tar -xzvf cudnn-10.0-linux-x64-v7.6.5.32.tgz解壓后將文件拷貝到cuda的目錄下
sudo cp cuda/include/cudnn.h /usr/local/cuda-10.0/include/ sudo cp cuda/lib64/libcudnn* /usr/local/cuda-10.0/lib64/ sudo chmod a+r /usr/local/cuda-10.0/include/cudnn.h /usr/local/cuda-10.0/lib64/libcudnn #給文件賦權限,好像可以不執行權限就可以驗證成功,可以先不執行這個命令測試一下查看cudnn版本
cat /usr/local/cuda/include/cudnn.h | grep CUDNN_MAJOR -A 24. 安裝pytorch
因為項目需要pytorch1.1.0版本,所以去torch官網的歷史版本https://pytorch.org/get-started/previous-versions/中下載pytorch1.1.0和torchvision0.3.0,筆者喜歡pip安裝,不喜歡anaconda,所以直接去https://download.pytorch.org/whl/cu100/torch_stable.html(不同cuda版本,把cu100改成相應版本,比如cu92)下載cuda10.0版本的torch文件,如下圖。
由于項目需求需要安裝3.8版本的python,但是Ubuntu自帶3.5,本來想試試3.5可不可以,但是發現不行,所以只能再裝3.6(不需要卸載3.5版本,可能卸載會導致系統不穩定,可以多版本兼容,最后改一下python指向即可)。
5. Ubuntu安裝python3.7.1
①?https://www.python.org/ftp/python/3.7.1/Python-3.7.1.tgz到官網下載python2.7
② 解壓
tar -zxvf Python-3.7.1.tgz③
cd Python3.7.1 ./config④
make #編譯 sudo make install #安裝⑤ 更改python3.7和pip3.7的指向,為了避免Python多版本的沖突,重定向至python37和pip37,如下圖所示。
sudo ln -s /usr/local/bin/python3.7 /usr/bin/python37 sudo ln -s /usr/local/bin/pip3.7 /usr/bin/pip37接下來在下載下來的torch,whl目錄打開終端,執行命令安裝,如下圖
安裝完成后輸入以下代碼測試
import torch torch.cuda.is_available() a=torch.Tensor([1.]) a.cuda() from torch.backends import cudnn cudnn.is_acceptable(a.cuda())結果如下圖成功
?
總結
以上是生活随笔為你收集整理的Ubuntu16.04安装NVIDIA显卡(RTX20系列)驱动+CUDA10.0+cudnn+Pytorch1.1.0的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: ubuntu多版本python和pip切
- 下一篇: EDSR-PyTorch复现