本教程基于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