系统:centos6.5
目标:基于CUDA8.0+Opencv3.1+Cudnnv5.1+python3.6接口的caffe框架html
本文是在CentOS6.5环境下配置caffe和caffe的pytho3.6接口的过程当中整理所得,本文是彻底基于NVIDIA官方的文档完成的CUDA8.0的配置。(无论任何软件的配置要是出现问题,我相信你只要能安安静静的啃完官方文档,那么必定能解决你配置过程当中出现的问题)
NVIDIA官方的CUDA8.0安装文档地址:http://docs.nvidia.com/cuda/c...
默认已提早安装NVIDIA显卡驱动,若尚未安装NVIDIA显卡驱动,请先阅读本人文章CentOS6.5编译安装NVIDIA驱动
进行NVIDIA驱动的安装。python
能够看到CentOS 6.x的最低配置要求是:
kernel≥2.6.32
GCC≥4.4.7
GLIBC≥2.12
……
由于CentOS6.5基本都能知足上述配置,因此只须要了解一下linux
lspci | grep -i nvidia
[root@localhost HY]# lspci | grep -i nvidia 02:00.0 VGA compatible controller: NVIDIA Corporation GK107 [NVS 510] (rev a1) 02:00.1 Audio device: NVIDIA Corporation GK107 HDMI Audio Controller (rev a1)
uname -m && cat /etc/*release
[root@localhost HY]# uname -m && cat /etc/*release x86_64 CentOS release 6.5 (Final) LSB_VERSION=base-4.0-amd64:base-4.0-noarch:core-4.0-amd64:core-4.0-noarch:graphics-4.0-amd64:graphics-4.0-noarch:printing-4.0-amd64:printing-4.0-noarch CentOS release 6.5 (Final) CentOS release 6.5 (Final)
gcc –-version
尽可能安装4.8.1以上,关于gcc怎么升级到4.8.1以上版本(能支持C++11)参考本人另外一篇博客:CentOS6.5编译安装gcc4.8.2centos
uname -r
同时安装后续步骤所需的两个依赖项:kernel-devel kernel-headers
bash
yum install kernel-devel-$(uname -r) kernel-headers-$(uname -r)
必须加上-$(uname -r)
不然下载到的是高一个版本的。
此外为了可以顺利运行安装完成后的Samples,还须要装如下依赖项:Freeglut
(本人安装的是freeglut-3.0.0 版本)libx11
libxmu
libxi
mesa*
build-essential
首先用yum info
看看是否已安装再使用yum install
去尝试安装,如果没有直接去网上找源码编译安装 .
其中特别指出build-essential
这个依赖项,乌班图和centos叫法不同,build-essential
是乌班图的叫法,而centos则是Development Tools
做用是提供编译程序必须软件包的列表信息,也就是说编译程序有了这个软件包它才知道头文件在哪,才知道库函数在哪,还会下载依赖的软件包,最后才组成一个开发环境,在配置centos系统的时候会提醒你要不要安装,如果没有安装可使用如下命令进行安装。框架
yum groupinstall "Development Tools"
CUDA8.0有3中方式安装,一种是RPM格式,一种是.run文件,还有一种是在线安装。在这里我选择的是.run文件安装。ide
Nouveau驱动是Linux系统自带的驱动,这一步在安装NVIDIA显卡驱动一文的时候已经介绍过了,能够如有问题能够参考:CentOS6.5编译安装NVIDIA驱动函数
备份系统镜像测试
mv /boot/initramfs-$(uname -r).img /boot/initramfs-$(uname -r).img.bak
建立新的系统镜像ui
dracut -v /boot/initramfs-$(uname -r).img $(uname -r)
其中$(uname -r)
指的是你
本身系统对应的内核版本,可在root下输入uname -r
试试。
文本模式下启动安装程序(.run)才能顺利安装。
vi /etc/inittab
把最后一行id:5
改成id:3
,这一行表明的是系统启动时默认的运行级别,5表明的是图形界面,3表明的是文本模式。保存退出
reboot
用root登录系统
并在终端输入
lsmod | grep nouveau
若是没有输出,表示禁用成功了
提高文件权限并执行安装命令
chmod 777 cuda_8.0.61_375.26_linux.run sh ./cuda_8.0.61_375.26_linux.run
EULA Acceptance
:一直回车到底,而后acceptCUDA Driver installation
:若是已经安装了NVIDIA显卡驱动,那么拒绝安装(n),他会问你需不须要安装openGL,参考以下:If installing the driver, the installer will also ask if the openGL libraries should be installed. If the GPU used for display is not an NVIDIA GPU, the NVIDIA openGL libraries should not be installed. Otherwise, the openGL libraries used by the graphics driver of the non-NVIDIA GPU will be overwritten and the GUI will not work. If performing a silent installation, the --no-opengl-libs option should be used to prevent the openGL libraries from being installed. See the Advanced Optionssection for more details.
根据本身的需求选择安装(y)或者不安装(n)CUDA Toolkit installation, location, and /usr/local/cuda symbolic link
:安装Toolkit并执行软连接CUDA Samples installation and location
以上两个建议直接按照默认路径安装,所有选y。
echo 'export PATH=/usr/local/cuda-8.0/bin:$PATH'>>~/.bashrc echo 'export LD_LIBRARY_PATH=/usr/local/cuda-8.0/lib64:$LD_LIBRARY_PATH'>>~/.bashrc source ~/.bashrc
新建cuda.conf
vi /etc/ld.so.conf.d/cuda.conf
加入cuda的lib64路径
/usr/local/cuda-8.0/lib64 ldconfig
而后把系统运行级别从新改成5,reboot
。
cd /home/HY/NVIDIA_CUDA-8.0_Samples/1_Utilities/deviceQuery make ./deviceQuery
若看到下面的图中的pass,则说明安装成功
tar -zxvf cudnn-8.0-linux-x64-v5.1.tgz cd cudnn-8.0-linux-x64-v5.1
复制全部lib文件到cuda路径下的lib64文件夹下
cp lib* /usr/local/cuda-8.0/lib64/
复制头文件到对应的include文件夹下
cp cudnn.h /usr/local/cuda-8.0/include/
设置软连接
cd /usr/local/cuda-8.0/lib64 rm -rf libcudnn.so libcudnn.so.5 ln -s libcudnn.so.5.1.10 libcudnn.so.5 ln -s libcudnn.so.5 libcudnn.so ldconfig -v
至此CUDA8.0和cudnnv5.1都安装完毕。在安装过程当中出现的问题主要是那几个依赖项没有编译安装或者环境变量没有及时更新的缘由。