win10 caffe GPU環境搭建

1、準備html

系統:win10python

顯卡:gtx1050Tigit

前期的一些必要軟件安裝,包括python3.五、matlab201六、vs201五、git,github

可參考:win10+vs2015編譯caffe的cpu debug版本、部署matcaffe - tingpan - 博客園  http://www.cnblogs.com/smbx-ztbz/p/9195243.htmlwindows


2、安裝app

一、安裝顯卡驅動388.13-desktop-win10-64bit-international-whql.exe ui

http://www.nvidia.com/Download/index.aspx?lang=en-usthis

二、安裝cuda_8.0.61_win10.exe,注意安裝的時候要自定義安裝,只選上cuda就行了,其餘的不要安裝,不然會將以前的顯卡驅動覆蓋掉,致使電腦黑屏。url

https://developer.nvidia.com/cuda-toolkit-archivespa

三、安裝補丁cuda_8.0.61.2_windows.exe

四、下載cudnn-8.0-windows10-x64-v5.1-zip後解壓到 D:\Projects\caffe_gpu\cuda

https://developer.nvidia.com/compute/machine-learning/cudnn/secure/v5.1/prod_20161129/8.0/cudnn-8.0-windows10-x64-v5.1-zip


3、編譯

一、進入文件夾 D:\Projects\caffe_gpu,下載源碼

git clone:git clone https://github.com/BVLC/caffe.git

二、進入caffe文件夾

cd caffe

三、切換分支

git checkout windows

四、修改scripts\build_win.cmd ,高亮爲修改內容

@echo off @setlocal EnableDelayedExpansion :: Default values if DEFINED APPVEYOR ( echo Setting Appveyor defaults if NOT DEFINED MSVC_VERSION set MSVC_VERSION=14
    if NOT DEFINED WITH_NINJA set WITH_NINJA=1
    if NOT DEFINED CPU_ONLY set CPU_ONLY=1
    if NOT DEFINED CUDA_ARCH_NAME set CUDA_ARCH_NAME=Auto if NOT DEFINED CMAKE_CONFIG set CMAKE_CONFIG=Release if NOT DEFINED USE_NCCL set USE_NCCL=0
    if NOT DEFINED CMAKE_BUILD_SHARED_LIBS set CMAKE_BUILD_SHARED_LIBS=0
    if NOT DEFINED PYTHON_VERSION set PYTHON_VERSION=2
    if NOT DEFINED BUILD_PYTHON set BUILD_PYTHON=1
    if NOT DEFINED BUILD_PYTHON_LAYER set BUILD_PYTHON_LAYER=1
    if NOT DEFINED BUILD_MATLAB set BUILD_MATLAB=0
    if NOT DEFINED PYTHON_EXE set PYTHON_EXE=python if NOT DEFINED RUN_TESTS set RUN_TESTS=1
    if NOT DEFINED RUN_LINT set RUN_LINT=1
    if NOT DEFINED RUN_INSTALL set RUN_INSTALL=1 :: Set python 2.7 with conda as the default python if !PYTHON_VERSION! EQU 2 ( set CONDA_ROOT=C:\Miniconda-x64 ) :: Set python 3.5 with conda as the default python if !PYTHON_VERSION! EQU 3 ( set CONDA_ROOT=C:\Miniconda35-x64 ) set PATH=!CONDA_ROOT!;!CONDA_ROOT!\Scripts;!CONDA_ROOT!\Library\bin;!PATH! :: Check that we have the right python version !PYTHON_EXE! --version :: Add the required channels conda config --add channels conda-forge conda config --add channels willyd :: Update conda conda update conda -y :: Download other required packages conda install --yes cmake ninja numpy scipy protobuf==3.1.0 six scikit-image pyyaml pydotplus graphviz if ERRORLEVEL 1 ( echo ERROR: Conda update or install failed exit /b 1 ) :: Install cuda and disable tests if needed if !WITH_CUDA! == 1 ( call %~dp0\appveyor\appveyor_install_cuda.cmd set CPU_ONLY=0 set RUN_TESTS=0 set USE_NCCL=1 ) else ( set CPU_ONLY=1 ) :: Disable the tests in debug config if "%CMAKE_CONFIG%" == "Debug" ( echo Disabling tests on appveyor with config == %CMAKE_CONFIG% set RUN_TESTS=0 ) :: Disable linting with python 3 until we find why the script fails if !PYTHON_VERSION! EQU 3 ( set RUN_LINT=0 ) ) else ( :: Change the settings here to match your setup :: Change MSVC_VERSION to 12 to use VS 2013
    if NOT DEFINED MSVC_VERSION set MSVC_VERSION=14 :: Change to 1 to use Ninja generator (builds much faster) if NOT DEFINED WITH_NINJA set WITH_NINJA=0 :: Change to 1 to build caffe without CUDA support if NOT DEFINED CPU_ONLY set CPU_ONLY=0 :: Change to generate CUDA code for one of the following GPU architectures :: [Fermi Kepler Maxwell Pascal All] if NOT DEFINED CUDA_ARCH_NAME set CUDA_ARCH_NAME=Auto :: Change to Debug to build Debug. This is only relevant for the Ninja generator the Visual Studio generator will generate both Debug and Release configs if NOT DEFINED CMAKE_CONFIG set CMAKE_CONFIG=Release :: Set to 1 to use NCCL if NOT DEFINED USE_NCCL set USE_NCCL=0 :: Change to 1 to build a caffe.dll if NOT DEFINED CMAKE_BUILD_SHARED_LIBS set CMAKE_BUILD_SHARED_LIBS=0 :: Change to 3 if using python 3.5 (only 2.7 and 3.5 are supported) if NOT DEFINED PYTHON_VERSION set PYTHON_VERSION=3 :: Change these options for your needs. if NOT DEFINED BUILD_PYTHON set BUILD_PYTHON=1
    if NOT DEFINED BUILD_PYTHON_LAYER set BUILD_PYTHON_LAYER=1
    if NOT DEFINED BUILD_MATLAB set BUILD_MATLAB=1 :: If python is on your path leave this alone if NOT DEFINED PYTHON_EXE set PYTHON_EXE=python :: Run the tests if NOT DEFINED RUN_TESTS set RUN_TESTS=0 :: Run lint if NOT DEFINED RUN_LINT set RUN_LINT=0 :: Build the install target if NOT DEFINED RUN_INSTALL set RUN_INSTALL=1 ) :: Set the appropriate CMake generator :: Use the exclamation mark ! below to delay the :: expansion of CMAKE_GENERATOR if %WITH_NINJA% EQU 0 ( if "%MSVC_VERSION%"=="14" ( set CMAKE_GENERATOR=Visual Studio 14 2015 Win64 ) if "%MSVC_VERSION%"=="12" ( set CMAKE_GENERATOR=Visual Studio 12 2013 Win64 ) if "!CMAKE_GENERATOR!"=="" ( echo ERROR: Unsupported MSVC version exit /B 1 ) ) else ( set CMAKE_GENERATOR=Ninja ) echo INFO: ============================================================
echo INFO: Summary: echo INFO: ============================================================
echo INFO: MSVC_VERSION               = !MSVC_VERSION!
echo INFO: WITH_NINJA                 = !WITH_NINJA!
echo INFO: CMAKE_GENERATOR            = "!CMAKE_GENERATOR!"
echo INFO: CPU_ONLY                   = !CPU_ONLY!
echo INFO: CUDA_ARCH_NAME             = !CUDA_ARCH_NAME!
echo INFO: CMAKE_CONFIG               = !CMAKE_CONFIG!
echo INFO: USE_NCCL                   = !USE_NCCL!
echo INFO: CMAKE_BUILD_SHARED_LIBS    = !CMAKE_BUILD_SHARED_LIBS!
echo INFO: PYTHON_VERSION             = !PYTHON_VERSION!
echo INFO: BUILD_PYTHON               = !BUILD_PYTHON!
echo INFO: BUILD_PYTHON_LAYER         = !BUILD_PYTHON_LAYER!
echo INFO: BUILD_MATLAB               = !BUILD_MATLAB!
echo INFO: PYTHON_EXE                 = "!PYTHON_EXE!"
echo INFO: RUN_TESTS                  = !RUN_TESTS!
echo INFO: RUN_LINT                   = !RUN_LINT!
echo INFO: RUN_INSTALL                = !RUN_INSTALL!
echo INFO: ============================================================ :: Build and exectute the tests :: Do not run the tests with shared library if !RUN_TESTS! EQU 1 ( if %CMAKE_BUILD_SHARED_LIBS% EQU 1 ( echo WARNING: Disabling tests with shared library build set RUN_TESTS=0 ) ) if NOT EXIST build mkdir build pushd build :: Setup the environement for VS x64 set batch_file=!VS%MSVC_VERSION%0COMNTOOLS!..\..\VC\vcvarsall.bat call "%batch_file%" amd64 :: Configure using cmake and using the caffe-builder dependencies :: Add -DCUDNN_ROOT=D:/Projects/caffe_gpu/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% ^
      -DCOPY_PREREQUISITES:BOOL=1 ^
      -DINSTALL_PREREQUISITES:BOOL=1 ^
      -DUSE_NCCL:BOOL=!USE_NCCL! ^
      -DCUDA_ARCH_NAME:STRING=%CUDA_ARCH_NAME% ^
      "%~dp0\.."

if ERRORLEVEL 1 ( echo ERROR: Configure failed exit /b 1 ) :: Lint if %RUN_LINT% EQU 1 ( cmake --build . --target lint  --config %CMAKE_CONFIG% ) if ERRORLEVEL 1 ( echo ERROR: Lint failed exit /b 1 ) :: Build the library and tools cmake --build . --config %CMAKE_CONFIG%

if ERRORLEVEL 1 ( echo ERROR: Build failed exit /b 1 ) :: Build and exectute the tests if !RUN_TESTS! EQU 1 ( cmake --build . --target runtest --config %CMAKE_CONFIG%

    if ERRORLEVEL 1 ( echo ERROR: Tests failed exit /b 1 ) if %BUILD_PYTHON% EQU 1 ( if %BUILD_PYTHON_LAYER% EQU 1 ( :: Run python tests only in Release build since :: the _caffe module is _caffe-d is debug if "%CMAKE_CONFIG%"=="Release" ( :: Run the python tests cmake --build . --target pytest if ERRORLEVEL 1 ( echo ERROR: Python tests failed exit /b 1 ) ) ) ) ) if %RUN_INSTALL% EQU 1 ( cmake --build . --target install --config %CMAKE_CONFIG% ) popd @endlocal

五、編譯caffe

scripts\build_win.cmd

六、用vs2015打開build\Caffe.sln,設置爲Release,對着ALL_BUILD,點擊生成。

image


end

相關文章
相關標籤/搜索