Windows 10下安装配置Caffe并支持GPU加速(修改版)

基本环境

建议严格按照版本来
- Windows 10
- Visual Studio 2013
- Matlab R2016b
- Anaconda
- CUDA 8.0.44
- cuDNN v4


1. 安装CUDA 8.0


安装完后,程序会自动地添加一个CUDA_PATH的环境变量:


2. 下载cuDNN

下载前需要在Developer网上注册一个号,简单填一填基本材料即可。


下完就是一个压缩包,也没办法安装的,压缩包里面有三个文件,分别是bin,include,lib,把它们解压,得到一个叫cuda的文件夹。


3. 从Microsoft的Github中下载Caffe的源码

注意了,一般来讲Windows配置Caffe是比较困难的,原因就在于caffe包不能去正常的官网下载,这个微软caffe真是给我们省了不少的麻烦,所以,强调一下,去这个链接下载Caffe源码的压缩包!
https://github.com/Microsoft/caffe

下载完后,解压文件,得到一个叫caffe-master的文件夹。


4. 安装Caffe

4.1 打开caffe-master文件夹,然后看到一个windows文件夹,然后继续打开windows文件夹,看到里面一个CommonSettings.props.example文件,复制出来一份,并改名字为CommonSettings.props。

4.2 用Visual Studio 2013打开windows文件夹下的Caffe.sln,检查解决方案中的项目,重点看libcaffe和test_all是否成功地被导入。


如果这两个没有成功导入,原因是Visual Studio 2013的安装路径中缺少CUDA 8.0.props(或者是你的版本号在CommonSettings.props写错了),我的是这个路径
C:Program Files (x86)MSBuildMicrosoft.Cppv4.0V120BuildCustomizations
其实CUDA 8.0.props就在cuda的安装目录下,我的路径是
C:Program FilesNVIDIA GPU Computing ToolkitCUDAv8.0extrasvisual_studio_integrationMSBuildExtensions
只要拷贝到
C:Program Files (x86)MSBuildMicrosoft.Cppv4.0V120BuildCustomizations
就行,那么libcaffe和testall就都没问题了!(以上解决方法属于引用,博主实际是导入了这两个项的。)

4.3 设置libcaffe为启动项目

方法是右键libcaffe,选择设为启动项目。

4.4 打开解决方案中的CommenSetting.probs,在CuDnnPath那里把存放解压的cudnn出来的文件夹cuda的目录路径放到其中去。(比如我这里是装在F:Windows+Caffe下面)----------------这一步如果把CuDnn里cuda的文件已经放到Cuda安装目录下的话,就不要再添加路径了,否则最后会报错.


也就是说从cudnn-7.5-windows7-x64-v5.1-rc.zip解压出cuda文件夹,假设位置在F:Windows+Caffe下,那么CuDnnPath设置为F:Windows+Caffe。这是因为程序中会自动给你加上cuda,例如(CuDnnPath)cudalibx64;$(LibraryPath)。因此你需要做的就只是指定它的上级目录。

4.5 解决方案配置设为release

4.6 选择菜单中的DEBUG->libcaffe Properties...


此处需要修改两个地方,分别是配置属性中的常规和C/C++中的常规,如下图所示

另外,在cudnn.hpp文件里找到下面代码,加上版本控制,GUDA版本太高会导致很多错误.

template <typename Dtype>
inline void setConvolutionDesc(cudnnConvolutionDescriptor_t* conv,
    cudnnTensorDescriptor_t bottom, cudnnFilterDescriptor_t filter,
    int pad_h, int pad_w, int stride_h, int stride_w) {
  //CUDNN_CHECK(cudnnSetConvolution2dDescriptor(*conv,
  //    pad_h, pad_w, stride_h, stride_w, 1, 1, CUDNN_CROSS_CORRELATION));
#if CUDNN_VERSION_MIN(6, 0, 0)//版本控制
  CUDNN_CHECK(cudnnSetConvolution2dDescriptor(*conv,
   pad_h, pad_w, stride_h, stride_w, 1, 1, CUDNN_CROSS_CORRELATION,
   dataType<Dtype>::type));
#else
  CUDNN_CHECK(cudnnSetConvolution2dDescriptor(*conv,
   pad_h, pad_w, stride_h, stride_w, 1, 1, CUDNN_CROSS_CORRELATION));
#endif
}

4.7 开始编译


漫长的等待… … …
直到编译成功,lucky boy,我这儿跳出这个提示,暂时没有去理他,反正没有出错就先这样吧

4.8 查看战利品

caffe_master文件夹下应该生成了一个名为Build的文件夹,以后编译的成功和运行需要的文件都会存放在..uildX64Relase下面。

至此,说明’libcaffe’已经成功地编译完啦。


5. 编译caffe

在Visual Studio 2013的解决方案上面右击选择属性(properties)


可以看到原来的是单项目启动,编译libcaffe,那么现在我们选择编译caffe,也可以选择更多的任务来编译。

开始编译,漫长的等待… … …后,也就编译成功啦!可以去看看战利品。


Windows10下安装配置Caffe并支持GPU加速
本文用到的安装材料:百度网盘

原文是在windows7系统配置环境,matlab2016a,cuda是7.5.

我的差异;win10,matlab2016b,cuda8.0.结果是成功的

原文地址:https://www.cnblogs.com/bile/p/9055368.html