首页 > 代码库 > Visual Studio 2015+CUDA8.0+CUDNN5配置Caffe-windows(BLVC)

Visual Studio 2015+CUDA8.0+CUDNN5配置Caffe-windows(BLVC)

 

 综合  来源:Angle_Cal  2016-12-19 17:32  624℃  0评论

BLVC版本的Caffe-windows已经支持Visual Studio 2015,下面的配置过程是综合了其他人的经验而且验证过的,可以确保有效.

  1. 下载Caffe-Windows(BLVC) 
    下载地址:GitHub 
    下载好解压缩即可.
  2. 安装VS2015,CUDA,CUDNN,Anaconda,CMake 
    VS2015 
    安装请自行完成,需要注意的是: 
    ①如果你以前安装有早起的VS,那么安装VS2015可能会导致原来的版本出现问题,所以如果可能的话,尽量只用最新版,如果必须新老版本共存,比较稳妥的解决方法是先卸载老版本,然后安装VS2015,然后再安装VS2013等早期版本; 
    ②VS2015再安装的时候,默认是不选中C++语言的,请使用自定义安装模式. 
    CUDA 
    请搜索CUDA8.0,到NVIDIA的官网上下载对应操作系统的版本,安装的时候,请关闭杀毒软件或者用管理员账户授权,安装过程中最好一直看着它,会进行很多敏感操作,如果杀毒软件进行了拦截,安装将会失败. 
    CUDNN 
    请搜索CUDNN,同样在NVIDIA的官网上下载,这个东西下载之后是一个压缩包,打开之后是一个叫做CUDA的文件夹.关于他的处理,后文将会提到,现在先下载备用. 
    Anaconda 
    这是一个python科学计算库,里面集成了很多模块和程序,根据你想使用的版本下载对应python2/python3的Anaconda,你并不需要先安装python,假如你以前安装过python,你完全可以卸载掉它,如果你不想卸载,请保证在系统变量中,Anaconda的变量排在python的前面(这很重要). 
    CMake 
    3.7.0以上版本的CMake都可以,需要注意的是,为了免除不必要的麻烦,我们不使用CMake的界面,所以请把CMake.exe所在的目录加入到系统变量path中.
  3. 下载依赖 
    在(ROOTDIR):\caffe-windows\scripts下,有一个python脚本:download_prebuilt_dependencies.py,运行这个脚本,将会下载一个名字叫:”/libraries_v140_x64_py27_1.0.1.tar.bz2”的压缩包,这个压缩包会出现在你运行脚本的地方,并且脚本会把它解压,(ROOTDIR):\caffe-windows下会出现一个叫做libraries的文件夹,我们在(ROOTDIR):\caffe-windows下新建一个名叫”build”的文件夹,把这个libraries文件夹放进去. 
    如果下载缓慢,可以使用这个链接注意文件名中实际上包含了很多信息,请核对一下,这和你的实际情况是不是一样的,如果不一样,请用脚本下载.
  4. 确认环境变量 
    技术分享
    注意:Anaconda和CUDA的环境变量是安装程序自己加进去的,最后面的那个关于build的变量需要你把第3步的目录加进去,CMake的变量也要加进去.
  5. 修改批处理脚本 
    (ROOTDIR):\caffe-windows\scripts下有一个build_win.cmd脚本,编辑这个脚本: 
    第一步: 
    注释掉115行-137行的所有代码,在行首添加”::”就可以注释掉这一行. 
    第二步: 
    处理CUDNN; 
    这里有两种方法,方法一:将CUDNN压缩包下,cuda文件夹中的三个子文件夹中的文件,依次复制到CUDA的对应目录下,CUDA的安装目录为:”C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v8.0”,使用这种方法,当程序需要使用CUDNN的时候,我们不需要做任何处理就能找到CUDNN的库,因为它存在于CUDA的目录下,而CUDA的变量已经在安装的时候自动的配置好了. 
    方法二:在上述脚本中的143行-155行那一块(如下),添加CUDNN的目录:
:: Configure using cmake and using the caffe-builder dependencies  
:: Add -DCUDNN_ROOT=C:/Projects/caffe/cudnn-8.0-windows10-x64-v5.1/cuda ^  
:: below to use cuDNN  
cmake -G"!CMAKE_GENERATOR!" ^  
      -DBLAS=Open ^       -DCMAKE_BUILD_TYPE:STRING=%CMAKE_CONFIG% ^       -DBUILD_SHARED_LIBS:BOOL=%CMAKE_BUILD_SHARED_LIBS% ^       -DBUILD_python:BOOL=%BUILD_PYTHON% ^       -DBUILD_python_layer:BOOL=%BUILD_PYTHON_LAYER% ^       -DBUILD_matlab:BOOL=%BUILD_MATLAB% ^       -DCPU_ONLY:BOOL=%CPU_ONLY% ^       -DCUDNN_ROOT=C:\Projects\cuda ^       ::上面一行就是CUDNN目录  
      -C %cd%\libraries\caffe-builder-config.cmake ^  %~dp0\..  
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6

使用这种方法,如果在后面的步骤上出现问题,请删除这句代码,然后使用方法一. 
6. 调用CMake生成解决方案 
在(ROOTDIR):\caffe-windows\build中打开命令行窗口(按下shift右击文件管理器空白,选择”在此处打开命令行”),运行build_win.cmd,如果上面的操作都没有问题,那么这一步将会调用CMake生成解决方案,请看好最开始输出的那些信息,如果使用的编译器是VC140,将会生成VS2015的解决方案. 
7. 使用VS打开解决方案 
等待上述脚本运行完毕,在build中会出现一个caffe.sln,使用VS2015可以直接打开这个解决方案. 
技术分享
8. 其他注意事项 
①不要参考VS2013的相关经验来在VS2015上配置Caffe,不要使用Microsoft的版本,一定要使用BLVC的版本. 
②为什么要使用VS2015呢?使用这种方法配置Caffe,不需要管理Nuget包,而且就算要使用Nuget,Vs2015的包管理器也要比VS2013的好用很多,假如你需要频繁的自己修改Caffe源码或者想读源码,那么我推荐你使用VS2015,而且有一件很重要的事:既然新的能用那么为什么要用旧的? 
③python2和python3都能用,假如你在运行python脚本的时候提示你有一些包找不到,那么请安装Anaconda,并在环境变量中保证Anaconda的排名比Python高,或者直接卸载python. 
④如果你一定要使用CMake的界面,遇到填写不上的属性,请查看build_win.cmd脚本中的文件. 
⑤如果你想修改一些东西,你如是否使用GPU,是否支持MATLAB等等,现在有两种方法:一种是直接定义C++预处理器,另一种是修改调用CMake的那个脚本,直接生成一个你想要的特殊的版本,修改配置文件的方法可能并不会起作用,因为这些项目根本就没有加载那个CommonSettings.props文件.

Visual Studio 2015+CUDA8.0+CUDNN5配置Caffe-windows(BLVC)