Windows 10下安裝配置Caffe並支持GPU加速(修改版)

 

基本環境

建議嚴格按照版原本
- Windows 10
- Visual Studio 2013
- Matlab R2016b
- Anaconda
- CUDA 8.0.44
- cuDNN v4git


1. 安裝CUDA 8.0

\
安裝完後,程序會自動地添加一個CUDA_PATH的環境變量:
\github


2. 下載cuDNN

下載前須要在Developer網上註冊一個號,簡單填一填基本材料便可。
\
\
下完就是一個壓縮包,也沒辦法安裝的,壓縮包裏面有三個文件,分別是bin,include,lib,把它們解壓,獲得一個叫cuda的文件夾。windows


3. 從Microsoft的Github中下載Caffe的源碼

注意了,通常來說Windows配置Caffe是比較困難的,緣由就在於caffe包不能去正常的官網下載,這個微軟caffe真是給咱們省了很多的麻煩,因此,強調一下,去這個連接下載Caffe源碼的壓縮包!
https://github.com/Microsoft/caffe
\
下載完後,解壓文件,獲得一個叫caffe-master的文件夾。ide


4. 安裝Caffe

4.1 打開caffe-master文件夾,而後看到一個windows文件夾,而後繼續打開windows文件夾,看到裏面一個CommonSettings.props.example文件,複製出來一份,並更名字爲CommonSettings.props。

\

4.2 用Visual Studio 2013打開windows文件夾下的Caffe.sln,檢查解決方案中的項目,重點看libcaffe和test_all是否成功地被導入。

\
若是這兩個沒有成功導入,緣由是Visual Studio 2013的安裝路徑中缺乏CUDA 8.0.props(或者是你的版本號在CommonSettings.props寫錯了),個人是這個路徑
C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\V120\BuildCustomizations
其實CUDA 8.0.props就在cuda的安裝目錄下,個人路徑是
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v8.0\extras\visual_studio_integration\MSBuildExtensions
只要拷貝到
C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\V120\BuildCustomizations
就行,那麼libcaffe和testall就都沒問題了!(以上解決方法屬於引用,博主實際是導入了這兩個項的。)ui

4.3 設置libcaffe爲啓動項目

方法是右鍵libcaffe,選擇設爲啓動項目。
\spa

4.4 打開解決方案中的CommenSetting.probs,在CuDnnPath那裏把存放解壓的cudnn出來的文件夾cuda的目錄路徑放到其中去。(好比我這裏是裝在F:\Windows+Caffe下面)----------------這一步若是把CuDnn裏cuda的文件已經放到Cuda安裝目錄下的話,就不要再添加路徑了,不然最後會報錯.

\
也就是說從cudnn-7.5-windows7-x64-v5.1-rc.zip解壓出cuda文件夾,假設位置在F:\Windows+Caffe下,那麼CuDnnPath設置爲F:\Windows+Caffe。這是由於程序中會自動給你加上cuda,例如(CuDnnPath)\cuda\lib\x64;$(LibraryPath)。所以你須要作的就只是指定它的上級目錄。3d

4.5 解決方案配置設爲release

 

4.6 選擇菜單中的DEBUG->libcaffe Properties...

\
此處須要修改兩個地方,分別是配置屬性中的常規和C/C++中的常規,以下圖所示
\
\版本控制

 

另外,在cudnn.hpp文件裏找到下面代碼,加上版本控制,GUDA版本過高會致使不少錯誤.code

template <typename Dtype>
inline void setConvolutionDesc(cudnnConvolutionDescriptor_t* conv,
    cudnnTensorDescriptor_t bottom, cudnnFilterDescriptor_t filter,
    int pad_h, int pad_w, int stride_h, int stride_w) {
  //CUDNN_CHECK(cudnnSetConvolution2dDescriptor(*conv,
  //    pad_h, pad_w, stride_h, stride_w, 1, 1, CUDNN_CROSS_CORRELATION));
#if CUDNN_VERSION_MIN(6, 0, 0)//版本控制
  CUDNN_CHECK(cudnnSetConvolution2dDescriptor(*conv,
   pad_h, pad_w, stride_h, stride_w, 1, 1, CUDNN_CROSS_CORRELATION,
   dataType<Dtype>::type));
#else
  CUDNN_CHECK(cudnnSetConvolution2dDescriptor(*conv,
   pad_h, pad_w, stride_h, stride_w, 1, 1, CUDNN_CROSS_CORRELATION));
#endif
}

 

4.7 開始編譯

\
漫長的等待… … …
直到編譯成功,lucky boy,我這兒跳出這個提示,暫時沒有去理他,反正沒有出錯就先這樣吧
\blog

4.8 查看戰利品

caffe_master文件夾下應該生成了一個名爲Build的文件夾,之後編譯的成功和運行須要的文件都會存放在..\build\X64\Relase下面。
\
至此,說明’libcaffe’已經成功地編譯完啦。


5. 編譯caffe

在Visual Studio 2013的解決方案上面右擊選擇屬性(properties)
\
\
能夠看到原來的是單項目啓動,編譯libcaffe,那麼如今咱們選擇編譯caffe,也能夠選擇更多的任務來編譯。
\
開始編譯,漫長的等待… … …後,也就編譯成功啦!能夠去看看戰利品。
\


Windows10下安裝配置Caffe並支持GPU加速
本文用到的安裝材料:百度網盤

原文是在windows7系統配置環境,matlab2016a,cuda是7.5.

個人差別;win10,matlab2016b,cuda8.0.結果是成功的

相關文章
相關標籤/搜索