CentOS 7 - Cuda + CuDNN + Tensorflow 環境架設 (GPU: NVIDIA Quadro P620)

 

顯示卡: NVIDIA Quadro P620 

查看顯卡

sudo lshw -C display 







---前置步驟---

安裝好 python3

centos 7 环境下GPU环境搭建+安装tensorflow

---安裝 bazel---

centos7安装bazel,亲测可行

---安裝好虛擬環境---


建立 venv 的環境

(第一個 venv 不要改,第二個 venv 改成你想建立的環境名稱,同時也會是環境資料夾的名稱)


python3 -m venv venv


啟動 venv 環境


source venv/bin/activate


如果想要離開虛擬環境


deactivate


接著到安裝 tensorflow之前

都可以先不用進入虛擬環境!


(最好有裝虛擬環境才不怕用爆,用爆就刪掉環境重裝就好)


***注意***

整個環境的安裝,一定要確定好彼此版本是否相容

不相容的版本會造成無法正常安裝

還有安裝 driver 的過程一定要專心

如果走錯一步可能會很麻煩!

遇到不確定的選項就去 Google 看看

官方的相容版本說明文件


本篇選擇 

tensorflow_gpu-1.15.0 + python 3.6 + CuDNN 7.6 + CUDA 10 + Nvidia Driver Linux v470


---安裝顯卡驅動---

版本: NVIDIA-Linux-x86_64-470.63.01.run

這部分請上 顯卡驅動下載官網 找自己顯卡的版本

然後將下載網址貼到 wget 後面


wget https://tw.download.nvidia.com/XFree86/Linux-x86_64/470.63.01/NVIDIA-Linux-x86_64-470.63.01.run


安裝前要先把 X Window 關掉否則會出錯

首先登出使用者(就是要到開機時選擇使用者的那個畫面)

然後按 fn + ctrl + alt + F2

進入到文字介面

然後輸入 root 的帳密進行安裝


先停用 nouveau

請參考 CentOS Linux 7 安裝 NVIDIA 顯示卡驅動程式教學 STEP4 ~ STEP6


先看 gdm.service 的狀態應為 activate


sudo systemctl status gdm.service


停止 gdm.service


sudo systemctl stop gdm.service


再看一次 gdm.service 的狀態


sudo systemctl status gdm.service


發現 activate 不見了就表示關閉成功


安裝驅動

sudo sh NVIDIA-Linux-x86_64-470.63.01.run


然後開始回答問題


install nvidia's 32-bit compatibility libraries?

no


顯示安裝完成

要再把 gdm.service 啟動回來


sudo systemctl start gdm.service


安裝完成後用下面指令確定安裝成功


nvidia-smi


---沒特別問題的可跳過此區---

不過這時候發現一個小意外

之前裝的有限網卡驅動直接消失了

所以沒辦法有線連線

然後我也找不到 modprob 指令了

modprob 指令應該在 /usr/sbin/ 裡頭

只要把 /usr/sbin 加進去 ~/.bashrc 裡頭的 $PATH 後面

然後用 source 重新使檔案生效就好

然後再用 modprob 把你的模組裝回來就好

(可參考: CentOS 7 - 聯想筆電安裝網卡驅動(Intel I219-LM))

------


---安裝 Cuda---

版本:

這部分一樣上 Cuda 下載官網 找自己相容的版本

然後按照給予的指令安裝即可

安裝時會出現 License Agreement 之類的東西

就一直按 Enter 就好

不過記得如果有 patch 的話也要一起下載

然後就是從主要的開始安裝

然後 patch 就是按照號碼順序安裝


執行主要安裝程式


sudo sh cuda_10.0.130_410.48_linux.run


Do you accept the previously read EULA?

accept/decline/quit: accept


Install NVIDIA Accelerated Graphics Driver for Linux-x86_64 410.48?

(y)es/(n)o/(q)uit: no

**注意這裡不需要再裝一次 driver


Install the CUDA 10.0 Toolkit?

(y)es/(n)o/(q)uit: yes


Enter Toolkit Location

 [ default is /usr/local/cuda-10.0 ]: 


Do you want to install a symbolic link at /usr/local/cuda?

(y)es/(n)o/(q)uit: yes


Install the CUDA 10.0 Samples?

(y)es/(n)o/(q)uit: yes


Enter CUDA Samples Location

 [ default is /home/olivia ]: 


執行 patch 1 程式


sudo sh cuda_10.0.130.1_linux.run


Do you accept the previously read EULA?

accept/decline/quit: accept


Enter CUDA Toolkit installation directory

 [ default is /usr/local/cuda-10.0 ]: 


Installation complete!

Installation directory: /usr/local/cuda-10.0


出現 Installation complete! 表示安裝成功


記得要將 CUDA 加入環境變數


打開 bashrc


sudo vim ~/.bashrc


export CUDA=/usr/local/cuda-10.0

export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$CUDA/lib64

export PATH=$PATH:$CUDA/bin


生效環境


source ~/.bashrc


重新載入 library


sudo ldconfig -v


測試部分請參考這個網站

NV顯卡驅動+cuda 9.1+cudnn 7.1.2 安裝

最後測試都為 pass 的話

就表示 CUDA 安裝成功了!


---安裝 CuDNN (非必要,為加速用)---

版本: cuDNN v7.6.5

先去 官網 下載這個版本下來(必須要登入或註冊帳號)


cuDNN Runtime Library for RedHat/Centos 7.3 (RPM)

cuDNN Developer Library for RedHat/Centos 7.3 (RPM)

cuDNN Code Samples and User Guide for RedHat/Centos 7.3 (RPM)


安裝 rpm 套件


sudo rpm -ivh libcudnn7-7.6.5.32-1.cuda10.0.x86_64.rpm 

sudo rpm -ivh libcudnn7-devel-7.6.5.32-1.cuda10.0.x86_64.rpm

sudo rpm -ivh libcudnn7-doc-7.6.5.32-1.cuda10.0.x86_64.rpm


加入環境變數


vim ~/.bashrc


export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/lib/x86_64-redhat-linux6E/


生效環境變數


source ~/.bashrc


重新載入 library


sudo ldconfig -v


測試部分一樣參考

NV顯卡驅動+cuda 9.1+cudnn 7.1.2 安裝

最後出現 Test Passed! 的話

就是表示安裝成功!


---安裝 Tensorflow---

版本:tensorflow_gpu-1.15.0


安裝 epel-release 


sudo yum -y install epel-release


把 yum 套件該更新的都更新


yum -y update


安裝需要用到的套件


sudo yum -y install gcc gcc-c++ python-pip python-devel atlas atlas-devel gcc-gfortran openssl-devel libffi-devel


移動到你剛剛裝虛擬環境的目錄


cd venv/


啟動虛擬環境



source bin/activate



安裝 tensorflow-gpu



pip install tensorflow-gpu==1.15



確認是否安裝成功



python -c "import tensorflow as tf;print(tf.reduce_sum(tf.random.normal([1000, 1000])))"



沒有出現 error 訊息就是成功了唷!

ref:

install Tensorflow with GPU support on Centos 7

centos 7 环境下GPU环境搭建+安装tensorflow

CentOS7.2 在GUI下关闭X Server

Ctrl+Alt+Fx not working to bring virtual terminal !

CentOS Linux 7 安裝 NVIDIA 顯示卡驅動程式教學

NV顯卡驅動+cuda 9.1+cudnn 7.1.2 安裝

How to Install and Use TensorFlow on CentOS 7

留言

這個網誌中的熱門文章

Formal Verification(正規驗證)介紹和如何使用 SVA(System Verilog Assertion) 做驗證

Quartus Qsys + Nios II 入門使用

Quartus Qsys + Nios II + SDRAM 進階使用