您的位置:首页 > Web前端

win10下vs2013+CUDA8.0+cuDNN8.0的caffe编译过程

2017-09-09 23:02 661 查看
安装需要的资源链接:链接:http://pan.baidu.com/s/1c1P0vwW 密码:pimo

1、首先安装VS:

推荐安装VS2013版本,我在最初使用VS2017时候到后期无法编译,好像因为Github提供的caffe代码只支持CUDA到7.5版本,而CUDA7.5只支持到openCV到2.x版本,无法支持VS2017所以导致编译错误。官网推荐版本也是VS2013。

附件中有VS2013,或者在睿思下载

2、安装CUDA:

NVIDIA官网已经把CUDA更新到9.0了,不过在我第一次安装的时候还是8.0,所以这次就以8.0作为介绍。

首先在英伟达官网下载CUDA8.0,或者在我准备的附件中直接使用,下载的话按图中选项选择下载版本即可,只需修改WINDOWS版本。附件中两个文件分别是cuda_8.0.61_win10.exe和cuda_8.0.61.2_windows.exe,解压后直接运行cuda_8.0.61_win10.exe即可开始安装。



3、下载cuDNN:
可以在附件中直接使用cuDNN8.0版本,或者在英伟达官网下载更新的版本,注意要选择对应CUDA版本的cuDNN。



经过上面的步骤CUDA已经安装完成,cuda安装好后,它的环境变量同时也被自动设置好了,不用手动设置了。下载好的cuDNN压缩包暂时不用,先放着。
4、从Microsoft官方Github上下载Caffe的源码压缩包:
Github上下载caffe源码压缩包,或者从附件中直接使用caffe-master.zip这个压缩包。



5、安装Caffe:
5.1 现在解压刚才下载的两个压缩包:cudnn-8.0-windows10-x64-v6.0.zip
                                                                  caffe-master.zip
先看解压出来的caffe-master文件夹:解压完成后打开caffe-master文件夹,然后看到一个windows文件夹,然后继续打开windows文件夹,看到里面一个CommonSettings.props.example文件,复制出来一份,并改名字为CommonSettings.props,如下图。



5.2 用VS2013打开Caffe.sln(就到刚刚那个文件夹里面),打开效果如下 最好设置libcaffe为启动项目。
可能会出现的问题有:libcaffe和testall没有加载成功。原因是vs2013的安装路径中缺少 CUDA 8.0.props ,我的是这个路径
C:\ProgramFiles (x86)\MSBuild\Microsoft.Cpp\v4.0\V120\BuildCustomizations
其实 CUDA 8.0.props 就在cuda的安装目录下,我的路径是C:\Program Files\NVIDIA GPU ComputingToolkit\CUDA\v8.0\extras\visual_studio_integration\MSBuildExtensions
只要拷贝到
C:\ProgramFiles (x86)\MSBuild\Microsoft.Cpp\v4.0\V120\BuildCustomizations就行。
在我安装的过程中,发现不仅仅会缺失CUDA 8.0.props,可能CUDA 8.0.targets也会缺失,造成编译不通过,所以保险起见可以将这两个文件都拷贝到
C:\ProgramFiles (x86)\MSBuild\Microsoft.Cpp\v4.0\V120\BuildCustomizations
如下图这样



经过我的测试,拷贝文件后再加载这两个项目,仍然会找不到cuda7.5这类的提醒,因为代码中提供的版本不对,我们需要手动修改。这时需要找到解决方案那一栏里的 libcaffe,右键选择编辑libcaffe,然后双击编译时出现的错误会自动跳到错误处,需要把CUDA 那里改为8.0.props(libcaffe这里有两处需要修改,修改方法相同),修改完在重新加载libcaffe就可以了。
testall和libcaffe的修改方法相同,只需要改一改代码就可以加载成功了!
5.3 现在来看解压出来的cudnn-8.0-windows10-x64-v6.0文件夹:打开CommenSetting.probs.在cudapath那里把存放解压的cudnn出来的文件夹cuda的目录路径放到其中去.(比如我这里是装在D:Caffe下面)



继续配置CommenSetting.probs.:修改如下图的代码部分,如果电脑支持GPU则应该将cpuonlybuild改为false,usecudnn改为true。



5.4打开设置:



选择编译类型为release,x64



关闭视警告为错误(即设置为No)如果不设置的话在编译boost库的时候会由于文字编码的警告而报错。



5.5然后就开始编译!
生成时可能遇到的错误:errorC2220: 警告被视为错误 -没有生成“object”文件(..\..\src\caffe\util\math_functions.cpp),如果出现这个错误,网上提供了两种解决办法(我只试了第一种就成功了)。解决办法如下:
1、用 Visual Studio直接打开math_functions.cpp,保存即可。
具体可以如下找到math_functions.cpp文件右击打开方式选择Visual Studio,OK了。或者打开Visual Studio->文件->打开->math_functions.cpp  保存就可以了。
2、我们注意到错误提示里“警告被视为错误”,也就是说这本来是一个警告,只不过由于我们设置的严格,将这个警告视为错误,我们放松我们的检查错误规则就好了。
打开VS->项目->属性->配置属性->C/C++->常规->将警告视为错误修改为“否”,重新编译就好。 
 
修改后再编译,这个过程比较长,不出意外应该会直接成功。
这个时候,在你刚刚解压出来的caffe-master文件夹下面就应该出现一个名叫Build的文件夹。



编译的成功和运行需要的文件都会存放在build\X64\Relase下面



这样caffe安装就完成了!
如果需要测试可以参考下面这个文章,里面有测试数据的下载链接和步骤,我就是使用它提供的数据测试的。
官方Caffe-windows 配置与示例运行
Reference:
[1]Windows+VS2013爆详细Caffe编译安装教程
[2]官方Caffe-windows 配置与示例运行
[3]
CUDA编程(一):背景与安装
[4]caffe官网安装指南
[5]caffe中matlab 和python 接口的安装
[6]【Caffe】训练ImageNet模型
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: