caffe-Windowscaffe+VS2013+Windows+GPU配置+cifar使用
Posted 风翼冰舟
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了caffe-Windowscaffe+VS2013+Windows+GPU配置+cifar使用相关的知识,希望对你有一定的参考价值。
前言
国际惯例,先来波地址:
CUDA WIN7:链接:http://pan.baidu.com/s/1nvyA3Qp 密码:h0f3 官方网址:https://developer.nvidia.com/cuda-toolkit
CUDA WIN10:链接:http://pan.baidu.com/s/1eRDJYmA 密码:1m4e
此处可以下载各种cuda版本:https://developer.nvidia.com/cuda-toolkit-archive
cudnn:链接:http://pan.baidu.com/s/1hr3Ug76 密码:vmdq 官方网址:https://developer.nvidia.com/cudnn 【可下载V5.0版本】
【更新日志2017-8-9】
偶然间发现了一条重要信息,caffe的微软分支竟然明确标出了支持cudnn v4.0和v5.0,而且BVLC的分支也明确标出只支持cudnn v3.0和cudnn4.0,原来一直忽视掉了这条信息,尴尬,还自己踩进了用cudnn v5.0编译BVLC -caffe分支的坑。特在此提示大家,目前微软的caffe支持cuda8.0+cudnn v5.0的编译,而这两个依赖都是目前NVIDIA官方网站推荐的,编译的时候只需要把CommonSettings.props的cuda版本改成<CudaVersion>8.0</CudaVersion>即可。
第一步:
为了方便,直接拷贝一个无GPU版本的caffe,根据情况修改一下名字,一般来说路径最好不要带中文,避免不必要麻烦,此处命名为CaffeDev-GPU文件夹。
安装CUDA(一直下一步就行了),然后解压cudnn
第二步:
修改配置文件路径E:\\CaffeDev-GPU\\caffe-master\\windows下的CommonSettings.props,此处可对比无GPU版本。将GPU版本的配置文件修改如下:
更新日志2017-11-1
如果你没有cudnn或者当前的CUDA版本仅支持CUDNNv5,而caffe版本仅支持CUDNNv3和v4,那么上面的UseCuDNN也可以设置成false, 也就是说类似于这样
<CpuOnlyBuild>false</CpuOnlyBuild>
<UseCuDNN>false</UseCuDNN>
<CudaVersion>8.0</CudaVersion>
第三步:
修改系统环境变量,为了不出现什么麻烦,将解压的D:\\caffe tool\\cudnn-7.0-win-x64-v4.0-prod\\cuda中的bin、include、lib三个文件夹拷贝到环境变量中CUDA_PATH显示的路径中的文件夹去去,直接覆盖,需要替换的替换~~~【此处非加环境变量哦,因为拷贝过去以后就已经存在环境变量中了】
然后在系统变量中添加变量名为:CuDnnPath 变量值为:D:\\caffe tool\\cudnn-7.0-win-x64-v4.0-prod的路径,此处的路径是你解压的cudnn地方,读者根据自己电脑做修改。接下来和CPU版本一样,运行caffe.sln,分别用debug和release都生成一遍。
第四步:
其实差不多完了,这里简要说一下:按照前面无GPU版本,建立input_folder,与它并列建立两个bat文件,内容如下:
convert.bat
convert_cifar_data.exe input_folder output_folders leveldb
pause
mean.bat
compute_image_mean.exe output_folders/cifar10_train_leveldb mean.binaryproto
pause
运行之
第五步:
将output_folders内的两个文件和mean.binaryproto拷贝到E:\\CaffeDev-GPU\\caffe-master\\examples\\cifar10下,并且修改cifar10_quick_solver.prototxt最后一句的CPU为GPU
在E:\\CaffeDev-GPU\\caffe-master下建立一个bat文件:
train.bat
.\\Build\\x64\\Release\\caffe.exe train --solver=examples/cifar10/cifar10_quick_solver.prototxt
pause
同样运行之
不得不说,这速度,呼呼地~~~~比用CPU训练四个小时快不知道多少倍
第六步:
在E:\\CaffeDev-GPU\\caffe-master\\Build\\x64\\Release下建立一个bat:
classification.bat
classification.exe E:\\CaffeDev-GPU\\caffe-master\\examples\\cifar10\\cifar10_quick.prototxt E:\\CaffeDev-GPU\\caffe-master\\examples\\cifar10\\cifar10_quick_iter_4000.caffemodel.h5 E:\\CaffeDev-GPU\\caffe-master\\examples\\cifar10\\mean.binaryproto E:\\CaffeDev-GPU\\caffe-master\\examples\\cifar10\\synset_words.txt E:\\CaffeDev-GPU\\caffe-master\\examples\\cifar10\\dog.jpg
pause
【此处的dog跟前面的无GPU版本一样,读者可以去网上随便下载】
dog.jpg
cat.jpg
运行此bat以后:
可以发现,和上次无GPU版本的结果貌似有点不一样吧~~~但是可怜滴狗狗依旧没摆脱被识别为猫的命运
以上是关于caffe-Windowscaffe+VS2013+Windows+GPU配置+cifar使用的主要内容,如果未能解决你的问题,请参考以下文章