Windows 下用 build_win.cmd 直接编译 GPU 版caffe
1.安装CUDA
首先我们得从CUDA官网,下载对应版本得CUDA,这里打开默认是CUDA 10,若我们想下载低版本的 CUDA,如下图,选择 Legacy Releases
:
这里以 CUDA 8.0 为例:
点击下载,下载完是一个 .exe 文件,只要硬件符合直接双击安装即可。
2.安装cudnn
这里自行下载,需要在 NVIDIA 的cudnn官网 注册一个账号,免费的,以后可能都会用到,所以这里就不给出百度云分享了,可以去官网注册一下。 完成注册登录以后进行下载页面:
根据自己CUDA 的版本选择对应的版本,以 cudnn 5.1 为例:
下载完是一个 .zip
的压缩包,直接解压后是3个子文件夹:
这时候我们找到第1步下载安装的 CUDA 路径,以我的电脑为例:
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v8.0
打开上述文件夹,找到对应于 cudnn 解压出来的 3 个子文件夹
将 cudnn 子文件夹中的文件分别放到上面三个对应名字的文件夹里,这样 cudnn 就配置完成了。
3.前期准备
可以看到caffe官方贴出的windows版安装对安装环境版本的说明:
###注:这里Python的版本只支持python2.7 或者 python3.5
所以我们需要先准备好:
a) VS2015
Tip: 如果电脑安装的是 VS2013, Python只能用2.7版本的,否则编译时会 version 报错
b) anaconda3: 因为现在官网最新下载的anaconda3都是python3.6版本的了,而目前caffe官方只支持到python3.5,这里给出anaconda3-python3.5版本的百度云下载链接。[密码:y05j]
c) anaconda2:直接官网下载安装即可。
###注:b 和 c 任选其一即可,后面根据自己选择的python版本进行对应配置,个人推荐下载anaconda3。
4.下载windows版caffe
Github 官方下载地址:下载
打开界面以后:
如上图所示:我们选择左边的Branch,选择windows然后选择下载就可以了。
5.修改Caffe配置文件
下载压缩包以后解压缩,可以看到:
进入 scripts 文件夹选择build_win.cmd文件,用文本编辑器进行编辑:
在build_win.cmd中根据我们的需求修改我们的配置(主要是69行-100行之间),因为我需要使用pycaffe,所以事先安装了 anaconda3[python3.5版本],这里我将87行改成了PYTHON VERSION=3 ),官方说明caffe的配置python只支持3.5或者2.7版本,所以安装时候需要注意一下,这里将76行, CPU_ONLY
设置成 0,99行 RUN_INSTALL
设置成1:
6.编译caffe
修改好build_win.cmd文件后保存退出,然后在caffe-windows文件下打开命令行工具,输入:
.\script\build_win.cmd
开始编译caffe(这里我使用的是Cmder,界面会比windows自带的cmd界面友好一些,而且可以加入右键菜单直接打开,类似于Ubuntu的Terminal,很方便,推荐大家使用,具体安装方法参见我的另一篇博客-Cmder 加入右键菜单),会有下面的输出:
可以看到第一次编译的时候,caffe会下载依赖库到图片中画红线的路径,所下载的依赖包143M左右,但下载过程中也可能会多次出现下载报错的问题,不是很稳定,这个时候我们可以:
1)先ctrl+c结束这个进程,然后以python版本为区分,可以在我分享的百度云文件下载自己对应版本的依赖包。
Python2.7的:libraries_v140_x64_py27_1.1.0.tar.bz2[ 密码:4yf0 ]
Python3.5的:libraries_v140_x64_py35_1.1.0.tar.bz2[ 密码:35jj ]
2)耐心等待它自己下载完。
上面两步任选其一,然后下载完成后直接将压缩包放在上面输出的对应路径下即可,以我的电脑为例:
然后再次输入 .\script\build_win.cmd
,可以看到:
这里下载就变成了开始提取文件,稍加等待,caffe就开始编译了。
最后编译成功会得到:
警告数可以忽略,每次编译可能都会不一样,只要是 0个错误,就说明caffe编译成功了,就可以正常使用了。
###Debug版和Release版通过修改build_win.cmd 第 81 行就可以了。步骤相同,直接编译即可。
编译以后刚才强调的将第99行 RUN INSTALL 设置成1,在build/install/bin 目录下就会生成:
可以看到像caffe.exe
, compute_image_mean.exe
等常用的执行文件就在这里了(设置为0就没有这些文件),C++使用时,添加相应路径即可。