從零教你配置GPU深度學習環境
ubuntu 18.04 GPU深度學習環境搭建
安裝的大致過程:
- 先安裝對應的顯卡驅動,如果之前已安裝則必須先刪除
- 安裝好了以後,重啟電腦,檢測一下顯卡驅動是否安裝成功
- 顯卡驅動裝成功後,開始安裝cuda
- 下載匹配的cuda版本,在安裝的時候選擇不要在安裝顯卡驅動其餘默認即可
- 安裝完成後檢驗一下是否安裝成功
- cuda安裝成功後,開始安裝cudnn,下載與cuda相對應版本的cudnn
- cudnn安裝完成後檢驗一下是否成功
- 上述均成功後,GPU的環境就已經配好了,就可以試試GPU的速度了
下面是一套具體的配置過程
1.硬體型號
GPU:NVIDIA GeForce RTX 2080 Founders Edition CPU:Intel 酷睿 i7 9700K
2. 下載RTX2080 Display Driver,cuda,cudnn
- RTX2080 Display Driver:
Linux x64 (AMD64/EM64T) Display Driver
- cuda: https://developer.nvidia.com/cuda-toolkit-archive 下載cuda9.0
- cudnn: https://developer.nvidia.com/rdp/cudnn-archive 下載Download cuDNN v7.3.1 (Sept 28, 2018), for CUDA 9.0 選擇下面的:cuDNN v7.3.1 Library for Linux
3.禁止系統默認的顯卡驅動
打開系統黑名單
sudo gedit /etc/modprobe.d/blacklist.conf
將下列代碼填入文件末尾
# for nvidia display device install
blacklist vga16fb
blacklist nouveau
blacklist rivafb
blacklist rivatv
blacklist nvidiafb
更新initramfs
sudo update-initramfs -u
重啟電腦
sudo reboot
查看是否禁用成功,無輸出則禁用成功
lsmod | grep nouveau
4.RTX2080顯卡驅動安裝(可參考安裝成功的輸出情況:https://www.jianshu.com/p/764edaff301e)
首先安裝gcc,g++,make
sudo apt-get install -y gcc g++ make
Ctrl+Alt+F1~F6進入命令行模式
sudo chmod a+x NVIDIA-Linux-x86_64-410.57.run
sudo ./NVIDIA-Linux-x86_64-410.57.run
如果原來安裝過,需要先卸載
sudo apt-get --purge remove nvidia-*
或者
sudo ./NVIDIA-Linux-x86_64-410.57.run -uninstall
最好在進行
sudo apt-get autoremove
開機後nvidia-smi命令查看顯卡驅動是否啟用。
5.cuda9.0安裝
cuda對應的有一下四個文件,需要統統下載,第一個是主文件,後3個相當於補丁(個人只裝了第一個),如需全部安裝,可參考:https://blog.csdn.net/u010801439/article/details/80483036
gcc和g++版本降級,ubuntu18.04默認gcc7.3,降級為gcc5,則ubuntu17.04和ubuntu16.04的cuda9.0都能編譯
sudo apt-get install gcc-5 gcc-5-multilib g++-5 g++-5-multilib
將gcc和g++版本切換成gcc5和g++5
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-5 50
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-7 40
sudo update-alternatives --config gcc
輸入想要使用的gcc編號
sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-5 50
sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-7 40
sudo update-alternatives --config g++
輸入想要使用的g++編號,查看gcc版本,已經切換到了gcc5
gcc -v
cuda9.0安裝 (安裝選項可參考:https://blog.csdn.net/autocyz/article/details/51841157)
sudo sh cuda_9.0.176_384.81_linux.run
是否安裝顯卡驅動選擇no,之前已經安裝過了 設置cuda環境變數
gedit ~/.bashrc
在.bashrc文件末尾添加如下代碼,則當前用戶可以使用
# cuda9.0
export PATH=$PATH:/usr/local/cuda-9.0/bin/
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/cuda-9.0/lib64/
#export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/cuda/lib64/
或者在profile中添加上面代碼,則所有用戶都能使用
gedit /ect/profile
重啟電腦
sudo reboot
測試cuda9.0是否安裝成功
cd /usr/local/cuda-9.0/samples/1_Utilities/deviceQuery
sudo make
./deviceQuery
最後輸出的是Result = PASS,說明cuda9.0安裝成功了
6. cudnn的安裝
下載下來的壓縮文件是.tar.gz,解壓cudnn會生成cuda文件夾,進行如下操作
cd 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
sudo chmod a+r /usr/local/cuda/lib64/libcudnn*
至此,GPU環境安裝完成,下面試試GPU的速度
tensorflow 運行GPU,參考:http://wiki.jikexueyuan.com/project/tensorflow-zh/how_tos/using_gpu.html
keras 運行GPU,參考:https://blog.csdn.net/zz2230633069/article/details/80782692,主要是conda install keras-gpu,安裝好了之後,使用keras進行編寫,程序自動在gpu上面運行。
7.如何在jupyter中使用tensorflow-gpu
主要解決jupyter中tensorflow的使用問題
參考:https://blog.csdn.net/tina_ttl/article/details/51762471#34-%E5%A6%82%E4%BD%95%E5%9C%A8jupyter%E4%B8%AD%E4%BD%BF%E7%94%A8tensorflow
問題原因猜想:主要是jupyter的安裝路徑和tensorflow-gpu的路徑之間的問題。
所有參考鏈接:
1 https://blog.csdn.net/VcosmosV/article/details/83022682
2 https://www.jianshu.com/p/764edaff301e3 https://blog.csdn.net/autocyz/article/details/518411574 https://blog.csdn.net/u010801439/article/details/804830365 http://wiki.jikexueyuan.com/project/tensorflow-zh/how_tos/using_gpu.html6 keras-gpu https://blog.csdn.net/zz2230633069/article/details/807826927 如何在jupyter中使用tensorflow https://blog.csdn.net/tina_ttl/article/details/51762471#34-%E5%A6%82%E4%BD%95%E5%9C%A8jupyter%E4%B8%AD%E4%BD%BF%E7%94%A8tensorflow推薦閱讀: