標籤:string 技術 解決方案 cpu get 載入 存在 tor out
綜合 來源:Angle_Cal 2016-12-19 17:32 624℃ 0評論
BLVC版本的Caffe-windows已經支援Visual Studio 2015,下面的配置過程是綜合了其他人的經驗而且驗證過的,可以確保有效.
- 下載Caffe-Windows(BLVC)
:GitHub
下載好解壓縮即可.
- 安裝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中.
- 下載依賴
在(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檔案夾放進去.
如果下載緩慢,可以使用這個連結注意檔案名稱中實際上包含了很多資訊,請核對一下,這和你的實際情況是不是一樣的,如果不一樣,請用指令碼下載.
- 確認環境變數
注意:Anaconda和CUDA的環境變數是安裝程式自己加進去的,最後面的那個關於build的變數需要你把第3步的目錄加進去,CMake的變數也要加進去.
- 修改批處理指令碼
(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\..
使用這種方法,如果在後面的步驟上出現問題,請刪除這句代碼,然後使用方法一.
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)