环境
Windows10 X64 专业版 1607
Visual Studio 2013 Update5
nvidia 375.95驱动 CUDA 8.0 Cudnn 5.1
Z170 GTX1070
由于CUDA8.0在微软的分支https://github.com/Microsoft/caffe还是7.5版本
选择这个https://github.com/BVLC/caffe/tree/windows
下载源代码后解压到C:\caffe,我们还需要Anaconda2,下载后安装。
启动Anaconda2后,首先conda create -n Caffe python=2.7建立一个环境,当然嫌慢可以试试清华大学的源
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
conda config --set show_channel_urls yes
如果是ipv6可以换成
conda config --add channels https://mirrors6.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
conda config --set show_channel_urls yes
清华大学官方写的多了引号。
然后我们还需要Ninja
conda config --add channels conda-forge
conda install ninja --yes
还有别的lib
conda install --yes numpy scipy matplotlib scikit-image pip six
conda config --add channels willyd
conda install --yes protobuf==3.1.0.vc12
万事俱备
用cd c:\caffe
如果你用的vs2013输入
python scripts\download_prebuilt_dependencies.py --msvc_version=v120
用的VS2015输入
python scripts\download_prebuilt_dependencies.py --msvc_version=v140
不过为了OpenCV2还是用2013好了 2015用3.x也不错不过2015只能CUDA8.0
然后开始编译
2013输入
call "%VS120COMNTOOLS%..\..\VC\vcvarsall.bat" amd64
2015输入
call "%VS140COMNTOOLS%..\..\VC\vcvarsall.bat" amd64
依次输入
set CMAKE_GENERATOR=Ninja
set CMAKE_CONFIGURATION=Release
mkdir build
cd build
cmake -G%CMAKE_GENERATOR% -DBLAS=Open -DCMAKE_BUILD_TYPE=%CMAKE_CONFIGURATION% -DBUILD_SHARED_LIBS=OFF -DCMAKE_INSTALL_PREFIX=啊这里输入你想安装的目录啊,我设置的c:/caffe/installed -C 这里输入依赖项的目录,没错应该是C:/Caffe/libraries/caffe-builder-config.cmake ..\
修改上面的汉字为需要的目录,起码删除汉字,注意\使用/代替
cmake --build . --config %CMAKE_CONFIGURATION%
cmake --build . --config %CMAKE_CONFIGURATION% --target install
如果需要cudnn可以修改上面一步
cmake -G%CMAKE_GENERATOR% -DBLAS=Open -DCMAKE_BUILD_TYPE=%CMAKE_CONFIGURATION% -DBUILD_SHARED_LIBS=OFF -DCMAKE_INSTALL_PREFIX=c:/caffe/installed -DCUDNN_ROOT=这里是cudnn目录 -C C:/Caffe/libraries/caffe-builder-config.cmake ..\
当然如果连CUDA都不想用配置加上 -DCPU_ONLY=1即可
最后环境变量加上
依赖项 默认 C:\Caffe\libraries\bin; C:\Caffe\libraries\\lib;
C:\Caffe\libraries\x64\vc12\bin; (VS2013加这个)
C:\Caffe\libraries\x64\vc14\bin; (VS2015加这个)
Enjoy!
简单说就是官方编译说明的具体说明。
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
M$那个使用了Nuget管理更舒心,如果不是Pascal用户不需要玩这个。省心省力。
另外据说cudnn在linux下效率更高,Pascal卡在Ubuntu16.04坑还不少。
建议使用核芯显卡安装Ubuntu,然后进去给N卡装驱动,然后屏蔽核显。如果默认独显进系统则grub引导时加入nomodeset参数,然后通过U盘安装367驱动(16.10可以进入系统通过键盘选择367驱动),然后进入系统,最好再sudo add-apt-repository ppa:graphics-drivers/ppa,然后apt-get update,apt-get install nvidia-367即可,然后安装CUDA,cudnn都是没有问题的。
还有推荐Anaconda,安装Tensorflow或者Keras都很容易……