ubuntu16.04+cuda8.0+cudnn5.0+caffe

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ubuntu16.04+cuda8.0+cudnn5.0+caffe相关的知识,希望对你有一定的参考价值。

ubuntu安装过程(硬盘安装)http://www.cnblogs.com/zhbzz2007/p/5493395.html
“但是千万不要用麒麟版!!!比原版体验要差很多!!!”
开关机的时候电脑最上面 有一行 提示 一晃即过,/dev/sda6: clean(未知,单没关系)
http://blog.csdn.net/xuezhisdc/article/details/48649575(意义)

1、教程1
http://blog.csdn.net/zwyjg/article/details/16371349

2、教程2
https://jingyan.baidu.com/article/e4d08ffdace06e0fd2f60d39.html

注意点:
1、划分分区时,只有交换分区不是主分区,其他分区都是主分区,分区格式都是EXT4
2、引导器加载到、boot\\分区
3、没有按照默认引导器安装,安装完成之后重启并不能进入ubuntu,再进到w7中,删除之前安装的添加条目,添加linux引导、\\boot分区
(看到下面加的是C盘目录,不是很清楚,明明末尾磁盘安装的,不过在c盘下肯定有它的启动文件)
分区详解http://blog.csdn.net/arcsinsin/article/details/17143163

后续:
无线驱动安装http://www.linuxdiyf.com/linux/27545.html
能联网之后,开始配置环境

第一步 先装显卡驱动,先装驱动,宾且屏蔽nouvea
1、网上教程从官网下载安装包(装了几次,测试失败,但发现在纯命令行模式下--(笔记本fn+ctrl+alt+F1/返回F7),装驱动就想在window的dos状态,要先停用图形界面(sudo *** stop),不知道为什么,装好之后启用(sudo *** start) )
2、从系统自带的驱动更新里更新,方便
装完之后 测试
sudo nvidia-smi
安装成功的话,会显示显卡信息
重启(装好nvidia的驱动之后,应该自动的屏蔽了linux自带的novea的驱动)

第二步,装cuda,
2.1的确需要从官网下载对应版本的安装包,最好放在在命令行模式下容易找到的地址
运行 sudo sh ****.run
不断 空格 跳过提醒
输入:accept
注意问题是否安装驱动时:n
y/enter(默认) 一直下去

中间会有警告:incomplete install,因为还有几个安装依赖(什么鬼),未安装
运行
2.2 sudo apt-get install freeglut3-dev build-essential libx11-dev libxmu-dev libxi-dev libgl1-mesa-glx libglu1-mesa libglu1-mesa-dev
不出意外过程中还会有类似安装不成功的提示,不管它,反正也看不懂


2.3更爱环境变量之类的东西,目前还是在纯命令行模式下,所以最好安装vim,用来更改环境变量
sudo apt-get install vim
sudo vi /etc/profile
打开后添加
export PATH=/usr/local/cuda-8.0/bin:$PATH
export LD_LIBRARY_PATH=/usr/local/cuda-8.0/lib64:$LD_LIBRARY_PATH

sudo ldconfig立即生效,不出意外这里会报错,感觉应该是2.2的原因,解决方法
sudo mv /usr/lib/nvidia-375/libEGL.so.1 /usr/lib/nvidia-375/libEGL.so.1.org
sudo mv /usr/lib32/nvidia-375/libEGL.so.1 /usr/lib32/nvidia-375/libEGL.so.1.org
sudo ln -s /usr/lib/nvidia-375/libEGL.so.375.39 /usr/lib/nvidia-375/libEGL.so.1
sudo ln -s /usr/lib32/nvidia-375/libEGL.so.375.39 /usr/lib32/nvidia-375/libEGL.so.1
注意版本号可能不同

再来
sudo idconfig 应该不会报错了
重启

2.4 测试
nvcc -V应该会输出cuda的版本

第三步 装cudnn
找到官网,注册帐号,下载对应版本的压缩文件,在任意路径下解压,当前文件夹运行终端
udo 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*

cudnn安装完成
http://www.2cto.com/os/201607/528798.html

第四部、opencvan安装(opencv的cmake应该跟window下的cmake相同,但他妈的要那么多依赖项???)

下载对应版本的opencv3.2.0匹配cuda8.0
解压位置

4.1,安装依赖项(各种版本问题不同,ubuntu16.04)https://help.ubuntu.com/community/OpenCV

sudo apt-get install libopencv-dev build-essential checkinstall cmake pkg-config yasm libtiff5-dev libjpeg-dev libjasper-dev libavcodec-dev libavformat-dev libswscale-dev libdc1394-22-dev libxine2-dev libgstreamer0.10-dev libgstreamer-plugins-base0.10-dev libv4l-dev python-dev python-numpy libtbb-dev libgtk2.0-dev libfaac-dev libmp3lame-dev libopencore-amrnb-dev libopencore-amrwb-dev libtheora-dev libvorbis-dev libxvidcore-dev x264 v4l-utils

4.2.未知必须的一步
cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local -D WITH_TBB=ON -D BUILD_NEW_PYTHON_SUPPORT=ON -D WITH_V4L=ON -D INSTALL_C_EXAMPLES=ON -D INSTALL_PYTHON_EXAMPLES=ON -D BUILD_EXAMPLES=ON -D WITH_QT=ON -D WITH_OPENGL=ON -D ENABLE_FAST_MATH=1 -D CUDA_FAST_MATH=1 -D WITH_CUBLAS=1 ..

我的中间出现这个问题
qt问题解决
I was able to solve this by using sudo apt-get install qt5-default

注意查看这几项yes:
-- Use Cuda: YES (ver 6.5)
-- Use OpenCL: YES
--
-- NVIDIA CUDA
-- Use CUFFT: YES
-- Use CUBLAS: YES
-- USE NVCUVID: NO
-- NVIDIA GPU arch: 11 12 13 20 21 30 35
-- NVIDIA PTX archs: 30
-- Use fast math: YES

4.3、make编译

make -j8 好长时间,近3个小时,不过还好这次编译没有出什么问题。

sudo make install 编译之后安装

sudo /bin/bash -c ‘echo "/usr/local/lib" > /etc/ld.so.conf.d/opencv.conf‘更改环境变量

sudo ldconfig环境变量生效

重启系统,重启系统后cd到build文件夹下:

sudo apt-get install checkinstall
sudo checkinstall
执行了checkinstall后,会在build文件下生成一个以backup开头的.tgz的备份文件和一个以build开头的.deb安装文件,当你想卸载当前的opencv时,直接执行dpkg -r build即可。

第五步,准备安装caffe
纠结安装Matlab,还是安装python时,感觉两者都不会反正都要了解,以及空间大小就没有安装matlab

5.1ubuntu16.04不知道本来就有python还是经过前面的安装,放正都已经有了python,所以只需要安装python的caffe依赖项就好了(什么鬼!)

https://github.com/BVLC/caffe/wiki/Ubuntu-16.04-or-15.10-Installation-Guide
sudo apt-get update
sudo apt-get install -y build-essential cmake git pkg-config
sudo apt-get install -y libprotobuf-dev libleveldb-dev libsnappy-dev libhdf5-serial-dev protobuf-compiler
sudo apt-get install -y libatlas-base-dev
sudo apt-get install -y--no-install-recommends libboost-all-dev
sudo apt-get install -y libgflags-dev libgoogle-glog-dev liblmdb-dev
sudo apt-get install -y python-pip
sudo apt-get install -y python-dev
sudo apt-get install -y python-numpy python-scipy

5.2安装caffe
http://blog.csdn.net/autocyz/article/details/52299889

5.3测试(http://www.cnblogs.com/yymn/articles/5018623.html)
mnist数据集测试

d $CAFFE_ROOT
./data/mnist/get_mnist.sh
./examples/mnist/create_mnist.sh
./examples/mnist/train_lenet.sh | tee res.out

竟然出现了问题!妈卖批的!!!!!!!!!!!!
Check failed: status == CUDNN_STATUS_SUCCESS (6 vs. 0) CUDNN_STATUS_ARCH_MISMATCH
!!!!!!!!!!!!!我日,我不白装了,装了半天,还没有超能云上的虚拟机好
官方的cudnn加速是不支持3.0以下的版本的,因此只能在Makefile.config中注释掉USE_CUDNN这行,重新执行以下

还有几个命令不知道(http://blog.csdn.net/autocyz/article/details/52299889)
make all -j8
make runtest
make pycaffe
make matcaffe

番外片:faster-rcnn
http://www.cnblogs.com/CarryPotMan/p/5390336.html
http://www.voidcn.com/blog/a125930123/article/p-6215083.html
感觉应该是confile没有配置好,已经下载了supervessl的makefile文件详细研究一下
py-R-FCN use Microsoft-version Caffe which is compatible with cudnn 5.后面要考虑升级cudnn5

1、首先down"faster-rcnn-caffe"(我也记不清安装了那些依赖了)

参考:http://blog.csdn.net/nicky_lyu/article/details/53181434

不过依赖项的第二步肯定做了,我是这么做的:
sudo apt-get install python-opencv
sudo pip install cython easydict
不过感觉少安装了一些依赖项
所以之后就一直报错!!!!

2、编译Cython模块(什么鬼)
$ cd py-faster-rcnn/lib
$ make

3编译caffe和pycaffe
(这里报了一点错误)

修改Makefile文件
3.1、(经验,因为自己的cudnn不能用)注释了use_cudnn=1编译通过

3.2、(反正报了一些python的错误)
cuda8.0有关makeconfig的更改:
INCLUDE_DIRS := $(PYTHON_INCLUDE) /usr/local/include /usr/include/hdf5/serial/ and
LIBRARY_DIRS := $(PYTHON_LIB) /usr/local/lib /usr/lib /usr/lib/x86_64-linux-gnu/hdf5/serial/

在py-caffe/faster-caffe下
3.3(报了什么错,有关tk的)sudo apt-get install python-tk
cd $FRCN_ROOT/caffe-fast-rcnn

3.4(No module named ‘yaml‘ #)
sudo apt-get install python-yaml

make -j8

编译通过

make test
有个layer.vision的错误,把报错文件的这个头文件注释就好

make runtest
这一步只在云上跑过,时间好长,并没出错,可以略去

make pycaffe
应该是编译出一些python的东西


4、运行(运行过程中各种错误,不过还好有google!(其实上面有些应该是运行中报的错吧!))
4.1下载模型
一般是使用其他浏览器下载,放置py-caffe的data中(新建fasterrcnnmodels)中

4.2
./tools/demo.py
Check failed: error == cudaSuccess (8 vs. 0) invalid device function
NMS注意(什么鬼)/lib/fast_rcnn/config.py第205行,把__C.USE_GPU_NMS = Ture改成__C.USE_GPU_NMS = False

番外片
原来github在远程发生更改后要:
git pull origin master
(感觉云端与本地保持同步的意思!)
然后才能上传
git push origin master

notepad(语言调节)
http://shouce.jb51.net/notepad_book/npp_func_code_hl.html

make test 错误(这个命令是什么鬼)
http://hammer2505.cn/2016/10/16/deeplearning1/
运行好长时间!!!!!!!!!

黑屏(猜测显卡冲突)
https://my.oschina.net/eechen/blog/227134




























































































































以上是关于ubuntu16.04+cuda8.0+cudnn5.0+caffe的主要内容,如果未能解决你的问题,请参考以下文章

Ubuntu16.04 +cuda8.0+cudnn+caffe+theano+tensorflow配置明细

ubuntu16.04+cuda8.0+cudnn5.0+caffe

Ubuntu16.04+cuda8.0+cudnn6.0+tensorflow1.3

Keras学习环境配置-GPU加速版(Ubuntu 16.04 + CUDA8.0 + cuDNN6.0 + Tensorflow)

深度学习主机环境配置: Ubuntu16.04 + GeForce GTX 1070 + CUDA8.0 + cuDNN5.1 + TensorFlow

Ubuntu16.04+GeForce GTX TITAN X+CUDA8.0+cudnn6