win7/win8+VS2013+caffe配置并测试Mnist

本来只是想写win7的,但是经证实win8也是可以的,过程都一样

配置阶段

配置参考:

http://blog.csdn.net/tjusxh/article/details/48463409
http://blog.csdn.net/happynear/article/details/45372231
非常感谢happynear和tjusxh的分享!

一 准备

  1. VS2013

  2. CUDA7.5
    记住一定要先装VS再装CUDA!

  3. 已经带好第三方库的caffe,直接下载http://pan.baidu.com/s/1TBtvC

二 编译

  1. 将3rdparty/bin文件夹添加到环境变量的PATH中,这样才能让程序找到这些第三方库的dll 很重要!!

  2. 打开buildVS2013文件夹中的 MainBuilder.sln文件,如果无法加载,表明CUDA版本不同。进入 buildVS2013目录,每个文件夹中的 .vcxproj (好像是有7个)用editplus打开,把所有的CUDA版本换成你自己的,如7.5换成7.0。

  3. 点击工具栏的绿色三角调试。第一次好像挺久的,半个小时左右。成功后将在根目录的bin中生成caffe.exe。双击,小黑屏一闪而过(没有example不会开始训练的)。好像默认是调试第一个,要是调试其他的要自己点进去,不给提示的话生成的是caffe.exe。在dos系统中运行为:

  4. 生成MATLAB接口的方法:首先,进入buildVS2013\MSVCme,需要把matcaffe.vcxproj项目里面的matlab目录修改成你自己的(还是用editplus修改即可)。点击运行matcaffe。成功后会在matlab/+caffe/private文件夹里面找到一个叫caffe_.mexw64的文件。这就是一个类似MATLAB接口的文件。

Mnist例子测试

虽然成功低编译出了caffe.exe,但是不用实例来跑一跑的话还是不能证明安装成功了吧。所以为了验证,我用mnist这个例子来试试。
按照我之前参考的博文,大概是这么个过程:
http://pan.baidu.com/s/1mgl9ndu 下载已经转换好的MNIST的leveldb数据文件,解压至./examples/mnist文件夹中,然后运行根目录下的run_mnist.bat即可开始训练,训练日志会保存在./log文件夹中,以INFO开头,txt格式的日志文件中。
没错,如果大家这么就正确运行没有错误了话,恭喜你,后面你就不用看了。现在我要总结下我运行中出现的错误。

  1. F1229 14:03:20.650424 72008 cudnn_conv_layer.cpp:53] Check failed: status == CUDNN_STATUS_SUCCESS (6 vs. 0)

    出现这个问题说明计算机的显卡配置太低,不能用CUDNN加速。CUDNN加速只试用于计算能力3.0以上的,很不幸,我的才2.1。。。
    打开VS2013,将所有工程中c/c++的预处理器定义中的USE_CUDNN删掉,如下图

  2. F0105 16:42:30.419942 21836 im2col.cu:57] Check failed: error == cudaSuccess (8 vs. 0) invalid device function

    出现这个问题,是因为cuda 的设置要改成你自己的计算机显卡设置
    我之前说过的吧,我的笔记本的GPU计算能力是2.1
    找到cuda的code generation设置,加上compute_20,sm_21
    这里写图片描述
    这个也是所有项目都改过来。

    我之前说过的吧,我的笔记本的GPU计算能力是2.1。好像只有2.1是一个例外,如果是2.0 或3.0或 5.0或 5.2的话,compute和sm 的值都取成一样的。反正也只有这么几个值能取。
    这里写图片描述

    然后,找到你的Makefile.config文件,这是一个example文件。打开它,找到CUDA_ARCH,进行如下修改【当然按照你自己的情况更改就好了】
    这里写图片描述

到这里遇到的2个错误就都解决了。重新编译所有项目(差不多0.5h+),然后按照我在mnist例子中最开始说的那样,运行根目录下的run_mnist.bat。运行时间10-20mins。结果如下:
这里写图片描述

最后祝大家都能成功运行!^_^

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值