[一]硬件以及系统介绍:
1.1.显卡(getforce 10 系列--GTX10xx,如GTX1060)
本解决方案使用的显卡类型为GTX1060,当然所有的getforce 10 系列---GTX10xx都可以。cuda7.5不支持getforce 10 系列以上的显卡,所以,那些安装有getforce 10 系列---GTX10以上的显卡的同学必须安装Cuda8.0,那些含有cuda7.5以及以下的教程将不再适用。
系统(主要是Linux)
我们先来看一看,Cuda8.0支持的系统和软件,如下图,Ubuntu16.04需要的gcc版本为5.3.1,而当Ubuntu16.04安装好之后,系统自带的gcc版本为5.4,所以gcc要重新安装,下面会有安装教程。
也就是说不论你是那个版本的Linux系统只要在上面表里即可使用Cuda8.0,从上表中可以看出Ubuntu14.04和Ubuntu16.04都可以使用Cuda8.0。
1.2.OpenCV版本选择
之前装了好几OpenCV3.1.0都失败了,找了半天原因,原来是OpenCV3.1.0对Cuda8.0兼容性不好。
由上图可知Cuda8.0出来的时间是2016年9月,而OpenCV3.1.0却是去年,OpenCV2.4.13是今年5月,兼容性比OpenCV3.1.0要好,所以我选择的是OpenCV2.4.13。
[二]NVIDIA显卡驱动安装
2.1有两种安装方式,第一种如下:
选择附加驱动,点击后会有如下窗口弹出
上面一项选择使用英伟达驱动,下面一项未知驱动为cpu带的集成显卡选择下面的选项:不用这个设备,选完以后一定要点击"Apply Changes"也就是“应用改变”的按钮(右边的按钮)。
安装完成以后要重启一下系统,然后在bash里面输入:
显示如下结果表示安装成功,你可以在下面查看你的驱动版本
2.2方案二:如果方案一行不通,可以自行安装驱动,从NVIDIA官网上下载驱动:
http://www.nvidia.cn/Download/index.aspx?lang=cn 如下图
选择自己需要的版本和驱动,然后点击旁边绿色按钮“搜索”:
点击绿色按钮“下载”
2.2.2下载完成,打开终端,先删除旧的驱动:
2.2.3 禁用自带的 nouveau nvidia驱动 (很重要!)
通过如下命令创建一个文件
在文件内添加如下内容:
更新一下
2.2.4重启系统至init 3(文本模式),也可先进入图形桌面再运行init 3进入文本模式,再安装下载的驱动就无问题,首先我们需要结束x-window的服务,否则驱动将无法正常安装
关闭X-Window
2.2.5.执行如下命令开始安装
安装完成后重新启动
X-Window
Ctrl+Alt+F7
进入图形界面
如果安装后驱动程序工作不正常,使用下面的命令进行卸载:
2.2.6检查是否安装成功,过程跟第一种方案一样,输入
[三]系统软件源设置并安装依赖包
流程,分别操作:系统设置(system settings)---->软件与更新(software & update)----->选择Ubuntu软件(Ubuntu software)选项卡。 来改变系统软件源为阿里的源。
更新列表,打开终端输入如下命令
软件源更新完毕后,安装一些必要的依赖包,命令如下
如果执行过程报出有一些包没有找到,如下图
则更新列表,打开终端输入如下命令
软件源更新完毕后,重新安装这些必要的依赖包,命令如下
此时就会安装成功!
[四]安装Anaconda
anaconda里面集成了很多关于Python科学计算的第三方库,主要是安装方便,而python是一个编译器,如果不使用anaconda,那么安装起来会比较痛苦,各个库之间的依赖性就很难连接的很好
4.1.下载:anaconda的下载地址为: https://www.continuum.io/downloads#linux
根据自己的需要选择不同的版本,但是推荐选择Python2.7的64位的。
4.2.安装
在终端中进入存放这你刚刚下载好的文件的目录(我的是/下载),然后执行如下命令进行安装:
输入回车键之后会有一段长长的须知,一直按Ctr+F直到须知展示完毕,然后输入yes继续执行
这个时候,我们在家目录下新建一个/Software文件夹用存放以后自己安装的软件,当然包含anaconda,执行如下命令
此时终端会提示你输入安装位置,你输入:/home/leijie/Software/anaconda2,然后继续安装
直到最后安装成功,到这里anaconda就安装完成了,测试一下
[五]cuda安装
前言:一定要搞清楚你自己的显卡要装什么版本的驱动,以及支持的cuda版本。我的显卡支持cuda8.0
5.1.下载: 下载地址为:https://developer.nvidia.com/cuda-downloads,然后根据自己的需要选择下载文件
我下载的是.run文件,也推荐大家下载这种格式的。
5.2.GCC降级------->由文章的最开始,我们可以知道cuda8.0目前仅支持gcc5.3而ubuntu16.04自带的gcc版本为gcc5.4,所以要降级。
5.2.1.先查看你是否需要降级GCC
如果你的版本是5.3.1以下的就不用降级了,否则要降级gcc。
5.2.2.下载gcc5.3.0,下载地址为:https://pan.baidu.com/s/1cL2v62,下载好后,进入到该文件目录,执行如下操作:
5.2.3.进入到gcc目录:
5.2.4.下载依赖项(网络不好的话可能慢点,慢慢等吧):
5.2.5. 新建一个编译的文件夹,并进入该文件夹:
5.2.6.生成makefile文件:
5.2.7.编译,编译过程有点长,请耐心等待:
5.2.8.安装:
编译结束以后,我们就可以执行安装了:
5.2.9.查看是否成功
5.3安装cuda
gcc降到5.3之后,可以直接来安装了cuda了,进到你下载好的cuda-8.0的run文件目录,运行如下命令:
这时便进入的声明的界面,你可以连续按Ctr+f向下阅读直到结尾,也可以按Ctr+C跳过阅读,直接到选择接受与否的位置
输入接受:accept; 然后回车。具体应该怎么输入请按照如下图片的指示来操作,原因:第一次不安装的是英伟达驱动,因为我们之前已经安装过了,第二次不安装是更新,也不用安,安装了麻烦。
由于我第一遍输错了,所以我又重新安装了一遍,这一次的操作如下图:
如果出现下图的结果,表明你已经安装成功了,虽然有一个警告和一个特别注意但是不影响结果
从上图可是,下载的例子里面是缺少一些支持库的,现在我们安装这些库:
从上图可以看出来,有一个特别注意,所以我们做如下配置:打开.bashrc来进行配置,命令如下
并将如下的几行内容复制的到.bashrc文件的最下面
然后设置环境变量和动态链接库,在命令行输入:
在打开的文件末尾加入:
保存之后,创建链接文件:
在打开的文件中添加如下语句:
然后执行如下命令使得链接立即生效:
现在重启电脑!
现在就开始测试一下看看cuda是否安装成功吧!输入如下命令打开测试的代码位置:
编译这些代码:
执行代码
如果出现如下结果---显卡的配置信息,恭喜你,这就证明你成功的安装了cuda
[六]cuDNN安装
cuDNN深度学习加速的一些库。下载地址为:https://developer.nvidia.com/cudnn
6.1.下载
打开网站,如下图,需要注册一个账户,因为下载的时候需要,然后下载,流程如下图:
6.2下载后解压
执行如下操作:
执行完之后,cuDNN算是安装完成了
[七]OpenCV2.4.13安装
7.1下载
下载地址:http://opencv.org/ 也可以从网盘下载:https://pan.baidu.com/s/1qXT7is0
7.2安装相关依赖项:
7.3配置编译opencv的环境
7.4解压这个下载的文件,在解压后的文件夹下新建一个opencv-debug文件夹:
7.5配置cmake
执行如下命令
点击configure出现下面的界面,cmake中configure的作用就是能够读出系统已经安装的相关文件,然后进行generate:
编译 时间可能有点长,耐心等待。 还是在刚刚的cd的那个文件夹opencv2-4-13-debug下执行:
要是中途出现了一些问题是与cuda有关的,打开opencv下面那个cmakelist文件把with_cuda设置为OFF,如下图,之后再cmake,再编译。
7.7环境变量配置
安装成功后还需要设置opencv的环境变量,打开文件
在最后一行输入如下内容:
执行下列命令, 使环境变量立即生效
设置lib库路径,打开文件
opencv的库一般安装在’/usr/local/lib’文件夹下,在文件内添加
执行下列命令使之立刻生效
经过上面的流程,这样就可以在eclipse里或者qtcreator里用opencv了。 不过要配置号相应的路径和lib文件。
7.8验证是否安装成功
对opencv的sample进行编译并运行,依次执行如下代码
如果出现lena的图片就证明成功了!
[八]Caffe安装配置
8.1下载
github下载地址:https://github.com/BVLC/caffe 网盘下载地址:https://pan.baidu.com/s/1bpqsnZD
下载好以后解压,如下图
8.2Makefile.config配置
你会看到其中有一个文件叫Makefile.config.example.这个文件是官方给出了编译的“模板”,我们可以直接拿过来小小的修改一下就行。复制下面的命令把名字改为Makefile.config
你会发现下面多了一个Makefile.config的文件
如果你没有安装 sublime ,可以参考我写的教程安装:http://blog.csdn.net/leijiezhang/article/details/53725710
你能够看到如下编辑窗口:
然后根据个人情况修改文件:
1.若使用cudnn,则将#USE_CUDNN := 1
修改成: USE_CUDNN := 1
(就是去掉注释的‘#’号)
2.若使用的opencv版本是2的,则将#OPENCV_VERSION := 3
修改为:OPENCV_VERSION := 2
3.若要使用python来编写layer,则将#WITH_PYTHON_LAYER := 1
修改为WITH_PYTHON_LAYER := 1
PYTHON_INCLUDE
加上注释,把ANACONDA_HOME
以及下面的PYTHON_INCLUDE
都去掉,并且改为如下图最终的样子。注意:ANACONDA_HOME
后面是anaconda的安装位置,根据自己的情况不同而不同。其中$(HOME)就是你的家目录
将
# Whatever else you find you need goes here.
下面的修改为:
(因为ubuntu16.04的文件包含位置发生了变化)
8.3修改makefile文件
打开makefile文件
将(大概409行的样子):
替换为:
hdf5_hl
和
hdf5
修改为
hdf5_serial_hl
和
hdf5_serial
,即
将:
改为:
8.4编辑/usr/local/cuda/include/host_config.h
执行如下命令,开始编辑 host_config.h
将其中的第115行注释掉:
改为:
8.4编译
编译之前,先安装编译需要的库 :
接下来进行编译(在解压的文件夹下): 然后就编译好了
再测试一下: 可能有个缓慢的编译过程,然后出现如下如所示的界面
参考网站:
http://blog.csdn.net/xierhacker/article/details/53035989
http://blog.csdn.net/autocyz/article/details/52299889
http://www.cnblogs.com/jinggege/p/5877326.html
http://blog.csdn.net/sunxianliang1/article/details/50723086
另外补充几个网址,方便各位查看
cuda的官方文档:http://docs.nvidia.com/cuda/
nvcc介绍的官方文档:http://docs.nvidia.com/cuda/cuda-compiler-driver-nvcc/index.html#axzz4SsuDPfdq
cuda开发包介绍的官方文档:http://docs.nvidia.com/cuda/#axzz4SsuDPfdq
还有cuda8.0安装的官方文档:http://blog.csdn.net/u012581999/article/details/52433609http://docs.nvidia.com/cuda/cuda-installation-guide-linux/index.html#axzz4SsuDPfdq