本教程基於Linux物理機進行相關配置,要求物理機中包含N卡且Capbility>=3.0,小於3.0(Fermi架構)只允許配置cuda,不能配置使用Cudnn:
本教程分為:
1.安裝NVIDIA驅動(默認使用nvidia-384)
2.安裝cuda加速工具
3.安裝cudnn
4.配置opencv2.4.13
5.配置並運行darknet
1.安裝NVIDIA驅動:
打開終端輸入
sudo apt-get install nvidia-384
等待安裝結束
重啟物理機,輸入nvidia-smi,若終端能顯示
表明安裝成功
2.安裝cuda:
前往Cuda官網下載Cuda8.0的相關程序
網址為https://developer.nvidia.com/cuda-80-ga2-download-archive
之所以選擇這個版本是因為對於TensorFlow等相關工具也試用,不會出現cuda等級過高的問題
相關程序在壓縮文件中也將會打包一份(我下載的是.run文件,避免了軟件源更新失敗無法安裝的問題)
接着我們按住CTRL+ALT+F1,進入非圖形化界面
執行
sudo service lightdm stop
關閉圖形化界面(檢測的時候使用(CTRL+ALT+F7),若無法返回桌面,表示圖形化桌面正常關閉)
進入down好的cuda文件的所在文件夾sudo sh cuda_8.0.61_375.26_linux.run –no-opengl-libs
同意相關協議后,會彈出是否安裝
NVIDIA
驅動,我們選擇
no
,我們已經安裝過了
384
版本的
NVIDIA
驅動,故無需安裝
cuda
中配帶的驅動
然后其他按照默認執行,當代碼結束后,執行
sudo reboot
重啟命令
重啟后,配置
cuda
環境變量
sudo gedit ~/.bashrc
在該文件最后加入兩行並保存
export LD_LIBRARY_PATH=/usr/local/cuda-8.0/lib64:$LD_LIBRARY_PATH
export PATH=/usr/local/cuda-8.0/bin:$PATH
退出后在終端中輸入
source ~/.bashrc
使環境生效
在終端中重新敲入
nvcc -V
判斷是否安裝成功
上
圖表示安裝成功,此時
cuda
已經安裝完成,然后我們可以進入
/usr/local/cuda-8.0/samples/1_Utilities/deviceQuery
查看自己的顯卡運算能力
運行
sudo make
編譯完成后運行
./deviceQuery
最后一行顯示
pass
表示
cuda
安裝成功,第二行顯示的是顯卡各個
Sp
的運算能力
上 圖表明顯卡運算能力是2.1,成功安裝好cuda
3.安裝cudnn:
Cudnn能夠基於cuda的基礎上再加速十倍附近的效果,但是要求顯卡運算能力必須達到3.0以上才可以配置,否則雖然預測效果快但是無法出現效果。
https://developer.nvidia.com/rdp/cudnn-download #cudnn下載網址
我們選擇.V5.1版本cudnn配對於cuda8.0
在終端輸入:
sudo cp cudnn.h /usr/local/cuda/include/ #復制頭文件
cd ../lib64 #打開lib64目錄
sudo cp lib* /usr/local/cuda/lib64/ #復制庫文件
sudo chmod a+r /usr/local/cuda/include/cudnn.h /usr/local/cuda/lib64/libcudnn* #給所有用戶增加這些文件的讀權限
建立軟連接:
cd /usr/local/cuda/lib64/
sudo rm -rf libcudnn.so libcudnn.so.5
sudo ln -s libcudnn.so.5.1.3 libcudnn.so.5
sudo ln -s libcudnn.so.5 libcudnn.so
設置環境變量,終端輸入
sudo gedit /etc/profile
在代碼末尾加入
PATH=/usr/local/cuda/bin:$PATH export PATH
進行相關環境配置:
sudo gedit /etc/ld.so.conf.d/cuda.conf(該目錄下原先不存在該文件)
輸入
/usr/local/cuda/lib64
保存退出
輸入
sudo ldconfig
到此cuda和cudnn的就已經成功安裝完成
4.配置opencv2.4.13
首先搭建依賴環境:
sudo apt-get install build-essential
其次下載opencv
sudo wget https://github.com/Itseez/opencv/archive/2.4.13.zip
解壓后進入opencv-2.4.13文件夾
輸入
mkdir release
創建release文件夾
cd release
cmake
-D
CMAKE_BUILD_TYPE
=
RELEASE
-D
CMAKE_INSTALL_PREFIX
=
/usr/
local
..
編譯
opencv
sudo make -j4
安裝
sudo make install
設置相關路徑
:
sudo gedit /etc/ld.conf.d/opencv.conf
此文件原來也是不存在的
添加上
/usr/local/lib
保存
運行
sudo ldconfig
配置環境
:
sudo gedit ~/.bashrc
在文件最后加上環境變量
PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/local/pkgconfig
export PKG_CONFIG_PATH
保存后運行
source ~/.bashrc
5.
配置並運行
darknet
下載
darknet
源碼及文件
git clone https://github.com/pjreddie/darknet.git
若沒有
git
運行
sudo apt-get install git
然后我們進入
darknet
文件夾
cd darknet
備份一份
Makefile
cp Makefile Makefile-bak
接着修改
Makefile
中的參數
修改
GPU = 1
CUDNN = 1
OPENCV = 1
然后知道找到
NVCC=nvcc
項
更改為
NVCC = /usr/local/cuda/bin/nvcc
保存退出
make -j12
成功的話文件夾下會生成
darknet
可執行文件
參考
blog:
https://blog.csdn.net/prototype___/article/details/79797611
https://blog.csdn.net/gzj_1101/article/details/78651650
https://blog.csdn.net/c406495762/article/details/62896035