ubuntu 16.04系统中nvidai、cuda、cudnn安装及注意事项
一、NVIDAI driver顯卡驅動安裝
?
首先看一下筆記本顯卡型號
lspci |grep VGA?
在命令行敲過這個命令后,有些臺式機或筆記本會顯示nvidia顯卡,如下所示:
?
?
但是我的筆記本電腦 只顯示nouveau卡(集成顯卡)
?
需要執行下面命令才能找到nvidia顯卡
lspci |grep 3D?
a.下載nvidia driver 安裝包
https://www.geforce.cn/drivers/beta-legacy
?
下載cuda 安裝包
https://developer.nvidia.com/cuda-toolkit-archive
?
cuda和nvidia驅動的版本要求如下:
?
在下載cuda安裝文件的時候,在那個界面的最下方有一個安裝指導書( Installation Guide for Linux),按照官網的指導應該是可以正確安裝的。
在這個文檔中一般會說明cuda要求的系統內核的最低版本,cuda9.0要求系統內核版本為4.4,有些情況下需要降低系統內核才能安裝成功,降低系統內核版本的方法詳見:https://jingyan.baidu.com/article/5552ef47fe57b6518ffbc991.html
b.禁用nouveau卡
?
在/etc/modprobe.d中創建文件blacklist-nouveau.conf
sudo vim /etc/modprobe.d/blacklist-nouveau.conf?
在文件中輸入以下內容:
blacklist nouveau options nouveau modeset=0?
執行
sudo update-initramfs -u
?
更新狀態,查看nouveau是否已經成功禁用
lsmod | grep nouveau
若無內容輸出,則禁用成功,若仍有內容輸出,請檢查上述操作,并重復。
c.安裝nvidia驅動
?
ctrl+alt+F1 進入命令行界面,登錄賬號密碼進入系統。
?
關閉圖形化界面,否則系統不能正常安裝驅動
sudo service lightdm stop?
卸載系統殘留的nvidia驅動:
sudo /usr/bin/nvidia-uninstall sudo apt-get remove --purge nvidia*?
給剛才下載的nvidia 驅動賦予權限
sudo chmod a+x NVIDIA-Linux-x86_64-418.56.run?
安裝nvidia驅動: 注意: --no-opengl-files 選項使系統不會在登錄界面反復循環
sudo ./NVIDIA-Linux-x86_64-396.18.run -no-opengl-files?
安裝過程中的選項:
The distribution-provided pre-install script failed! Are you sure you want to continue? 選擇 yes 繼續。
Would you like to register the kernel module souces with DKMS? This will allow DKMS to automatically build a new module, if you install a different kernel later? 選擇 No 繼續。
?
問題沒記住,選項是:install without signing
?
問題大概是:Nvidia’s 32-bit compatibility libraries? 選擇 No 繼續。
Would you like to run the nvidia-xconfigutility to automatically update your x configuration so that the NVIDIA x driver will be used when you restart x? Any pre-existing x confile will be backed up. 選擇 Yes 繼續。(來自博客https://blog.csdn.net/lihe4151021/article/details/90083431)
?
打開圖形化界面:
sudo service lightdm start?
打開一個terminal,輸入
nvidia-smi nvidia-settings?
出現一下信息:代表安裝成功
?
?
若出現下面的問題:
NVIDIA-SMI has failed because it couldn‘t communicate with NVIDIA driver. Make sure that the latest driver is installed and running.
?
則輸入下面的命令, 其中390.129 修改成自己顯卡驅動版本,查看方式 cd /usr/src 然后輸入ls ,就可以看到產看到自己顯卡驅動的版本。
sudo apt-get install dkms sudo dkms install -m nvidia -v 390.129?
一般人到這里顯卡驅動就完全安裝完成了,但是:當輸入nvidia-settings 時,我的電腦彈出一個對話框:You do not appear to be using the NVIDIA X driver. Please edit your X config。我也不知道什么問題,后來也沒有解決,我跳過了這個問題,直接安裝cuda。
?
二、安裝與卸載cuda
?
注意:cuda安裝版本一定要與顯卡驅動版本相對應!!!
?
a.安裝cuda
?
下載對應版本地址:https://developer.nvidia.com/cuda-toolkit-archive
?
ctrl+alt+F1 進入命令行界面,登錄賬號密碼進入系統。
?
關閉圖形化形化界面
sudo service lightdm stop?
安裝cuda:
sudo sh cuda_8.0.61_375.26_linux.run?
一直按回車,直至100%。
鍵入:accept
和一系列yes
詢問是否安裝driver 一般是鍵入 no, 因為上面已經安裝成功了。
(但是我考慮我以前安裝的那個驅動沒有成功,我就鍵入了yes.,一般情況如果安裝了驅動,千萬不要鍵入yes!!!!!)
?
重啟圖形化界面:
sudo service lightdm start?
設置環境變量:
?
打開主目錄下的 .bashrc文件添加如下路徑,例如我的.bashrc文件在/home/wangyuanwei下,如果沒有找到,則按Ctrl+H鍵顯示隱藏文件。
?
在文件最后加入如下語句,注意路徑中cuda 版本(比如 cuda-8.0)要根據自己安裝的cuda版本進行替換。
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/cuda-8.0/lib64 export PATH=$PATH:/usr/local/cuda-8.0/bin export CUDA_HOME=$CUDA_HOME:/usr/local/cuda-8.0?
在命令行敲入如下命令,更新環境變量:
source ~/.bashrc?
在命令行敲入如下命令:
nvcc --version若顯示:
?
?
則說明安裝成功。
?
b.卸載CUDA
為什么一開始我就要卸載CUDA呢,這是因為筆者是換了顯卡RTX2070,原本就安裝了CUDA 8.0 和 CUDNN 7.0.5不能夠正常使用,筆者需要安裝CUDA 10.0 和 CUDNN 7.4.2,所以要先卸載原來的CUDA。注意以下的命令都是在root用戶下操作的。
?
卸載CUDA很簡單,一條命令就可以了,主要執行的是CUDA自帶的卸載腳本,讀者要根據自己的cuda版本找到卸載腳本:
sudo /usr/local/cuda-8.0/bin/uninstall_cuda_8.0.pl?
卸載之后,還有一些殘留的文件夾,之前安裝的是CUDA 8.0。可以一并刪除:
sudo rm -rf /usr/local/cuda-8.0/三、安裝cudnn
?
注意:cudnn版本一定要與python版本對應!!!
?
a、TensorFlow與Python, CUDA, cuDNN的版本對應關系
?
| Version | Python version | Compiler | Build tools | cuDNN | CUDA |
| tensorflow_gpu-1.13.1 | 2.7, 3.3-3.6 | GCC 4.8 | Bazel 0.19.2 | 7.4 | 10.0 |
| tensorflow_gpu-1.12.0 | 2.7, 3.3-3.6 | GCC 4.8 | Bazel 0.15.0 | 7 | 9 |
| tensorflow_gpu-1.11.0 | 2.7, 3.3-3.6 | GCC 4.8 | Bazel 0.15.0 | 7 | 9 |
| tensorflow_gpu-1.10.0 | 2.7, 3.3-3.6 | GCC 4.8 | Bazel 0.15.0 | 7 | 9 |
| tensorflow_gpu-1.9.0 | 2.7, 3.3-3.6 | GCC 4.8 | Bazel 0.11.0 | 7 | 9 |
| tensorflow_gpu-1.8.0 | 2.7, 3.3-3.6 | GCC 4.8 | Bazel 0.10.0 | 7 | 9 |
| tensorflow_gpu-1.7.0 | 2.7, 3.3-3.6 | GCC 4.8 | Bazel 0.9.0 | 7 | 9 |
| tensorflow_gpu-1.6.0 | 2.7, 3.3-3.6 | GCC 4.8 | Bazel 0.9.0 | 7 | 9 |
| tensorflow_gpu-1.5.0 | 2.7, 3.3-3.6 | GCC 4.8 | Bazel 0.8.0 | 7 | 9 |
| tensorflow_gpu-1.4.0 | 2.7, 3.3-3.6 | GCC 4.8 | Bazel 0.5.4 | 6 | 8 |
| tensorflow_gpu-1.3.0 | 2.7, 3.3-3.6 | GCC 4.8 | Bazel 0.4.5 | 6 | 8 |
| tensorflow_gpu-1.2.0 | 2.7, 3.3-3.6 | GCC 4.8 | Bazel 0.4.5 | 5.1 | 8 |
| tensorflow_gpu-1.1.0 | 2.7, 3.3-3.6 | GCC 4.8 | Bazel 0.4.2 | 5.1 | 8 |
| tensorflow_gpu-1.0.0 | 2.7, 3.3-3.6 | GCC 4.8 | Bazel 0.4.2 | 5.1 | 8 |
?
cudnn 下載地址:https://developer.nvidia.com/rdp/cudnn-archive
?
需要注冊帳號登入進去才能下載cudnn
?
選擇符合自己cuda版本的下載“cuDNN Library for Linux”那一個
?
我們從Nvidia官網上下載下來的cudnn for linux的文件格式是.solitairetheme8,想要解壓的話需要先轉成tgz格式再解壓:
?
cp cudnn-8.0-linux-x64-v5.1.solitairetheme8 cudnn-8.0-linux-x64-v5.1.tgz tar -xvf cudnn-8.0-linux-x64-v5.1.tgz?
解壓后,會看到cuda文件夾, 在當前路徑打開terminal, 輸入如下語句:
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 sudo chmod a+r /usr/local/cuda/lib64/libcudnn*?
查看cudnn版本:
?
在終端輸入
cat /usr/local/cuda/include/cudnn.h | grep CUDNN_MAJOR -A 2?
若出現:
?
?
則說明cudnn 安裝成功。
?
至此顯卡已經全部配置好了,接下來可以安裝anaconda 創建環境 下載庫進行深度學習研究了。
?
本人覺得這個安裝指南寫的比較全面:
https://blog.csdn.net/wanzhen4330/article/details/81699769
?
總結
以上是生活随笔為你收集整理的ubuntu 16.04系统中nvidai、cuda、cudnn安装及注意事项的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: JavaScript中九九乘法表制作
- 下一篇: Flask框架项目实例:**租房网站(一