环境:win10, CUDA 8.0, CuDNN 5.0 版本:Caffe-Microsoft + VS2013
拥有一张支持CUDA的Nvida显卡。 安装VS2013。 从Nvida官网下载CUDA 8.0,通过安装包完成安装。 再从Nvida官网下载CuDNN 5.0,应该需要先注册一个账号。将下载的3个文件夹复制到CUDA_PATH之下(在CUDA安装完成后因该会自动写入环境变量)。一般CUDA的默认安装路径如下: C:/PRogram Files/NVIDIA GPU Computing Toolkit/CUDA/v8.0
稳妥起见测试一下CuDNN的安装情况,这里直接搬运一个简单的方法:
添加新项目——NVIDA——CUDA 8.0,VS2013将能够生成一个默认的CUDA项目,如能成功运行意味着CUDA安装成功。
将kernel.cu中的代码全部替换成:
#include <iostream>#include <cuda_runtime.h>#include <cudnn.h>using namespace std;void main(){ cudnnHandle_t handle; cudnnStatus_t t = cudnnCreate(&handle); cout << cudnnGetErrorString(t); getchar();}运行之,如能显示CUDNN_STATUS_SUCCESS则说明CuDNN安装正常。
从Github下载Microsoft/Caffe,可以通过下载.zip或直接git clone。 将caffe/windows路径下的CommonSettings.props.example重命名为CommonSettings.props,打开。
修改该配置文件下的CUDA版本和显卡的计算能力(从官网找到自己型号的显卡并进行查找),比如我的显卡计算能力为3.0就写为30,务必正确设置。
注:在配置文件的时候,PythonSupport、MatlabSupport项目默认是false,也就是说如想使用Caffe的Python接口,需要将其设为true。
打开caffe/windows路径下的Caffe.sln。 右键解决方案Caffe,点击“启用NuGet程序包还原”。
选中Caffe解决方案下的所有项目(共16个),右键点击“属性”,配置属性——C/C++——常规,把“将警告视为错误”选项设为“否”。此举是为了规避代码中英文环境冲突的一些问题。
将“解决方案配置”改为Release x64(推荐)。事实上Debug x64也可以使用。
找到libcaffe项目,右键选择“重新生成”。
此时VS2013将自动开始下载Caffe的各种依赖包,包括OpenCV,Protobuf等等。Nuget的好处在于自动管理依赖包不需要自己手动一个个下载一个个配环境测试安装正常(想想就头大),缺点在于下载速度要看你的网络了。各依赖项位于caffe同级的NugetPackages文件夹下,最稳妥的方式就是等VS自己下载完成。
如果libcaffe编译成功,接下来直接生成解决方案Caffe即可,生成成功则大功告成。
如果libcaffe编译失败,或者解决方案Caffe编译过程中报错,说明你并没有透支今年的人品T_T。这篇文章给出了编译过程中我曾遇到过的各种错误及解决方法,基本涵盖了将会出现的错误。Caffe鉴于依赖项较多(从NuGet里能看到),在编译过程中出点错误似乎并不令人惊讶=。=
新闻热点
疑难解答