終極版!!!!!matconvnet安裝過程的各種坑!!MATLAB深度學習包安裝!!matlab2016a + visio studio 2015 + cuda9.0 +cudnn-9.0

博客 https://blog.csdn.net/u010493489
郵箱 [email protected]
歡迎交流

所用軟件版本
matlab2016a
Visio studio 2015 Viso Studio 2017
matlab\matconvnet-1.0-beta25
cuda 9.0 cuda 10.1
cudnn-9.0-windows10-x64-v7.4.2.24
MingW 64

安裝了半個多月,也不行半途而廢,一直在不斷的嘗試,不斷的看各種博客,不斷的改各種bug。幾乎把所有的軟件都重新安裝了一次。 每一次bug都讓我重裝重卸載了軟件無數遍。

今天終於安裝完成了。
最終所使用的軟件 版本
matlab2016a + visio studio 2015 + cuda9.0 +cudnn-9.0-windows10-x64-v7.4.2.24
我認爲不是沒有所謂的標配,只是一定要對應。
1、matlab 2016a在剛運行mex -setup時候,一直在編譯出錯,嘗試了Ming W64 + GCC,可以編譯了
2、在vl_compilenn過程中還是會出現各種各樣的錯誤。最後裝了visio studio 2015 ,結果可以進行正確編譯。
3、在Visio studio中對nobody_vs 2015.sln 進行了編譯,在visio中運行會出現好多錯誤。原因是SDK沒有正確安裝,用了一天的時間一直在修改,修復Visio 2015
修復Visio 參考網頁
https://docs.microsoft.com/en-us/previous-versions/mt584216(v=vs.140)
裏面正好有我所出現的問題 :
“WixAttachedContainer - The system cannot find the file specified”

4、在使用GPU編譯的vl_compilenn的時候,會出現各種編譯錯誤。嘗試了好多次發現是我的CUDA和CUDAA版本不對應。於是我又重新裝了CUDA9.0和相對應的CUDAA版本

5、中途會出現的各種bug儘量不要參照各種博客去修改,都要參照官網的步驟和常見的問題去進行解決。

所參考的網頁:
matconvnet 安裝網頁:
http://www.vlfeat.org/matconvnet/install/
CUDA安裝過程
https://docs.nvidia.com/cuda/cuda-installation-guide-microsoft-windows/index.html#installing-cuda-development-tools
還有一個從官網找的安裝CUDA的安裝手冊
在這裏插入圖片描述
cudaa 安裝教程
https://docs.nvidia.com/deeplearning/sdk/cudnn-install/index.html#install-windows

參考了一個博客
https://blog.csdn.net/qq_28618765/article/details/79590040

下面是我記憶中所能記得的安裝過程。
1、下載所需要的cuda和cudnn
2,點擊CUDA安裝包,一直電擊下一步進行安裝。
在我安裝cuda9的時候官網還得去下載補丁包。先把cuda9.0基礎包裝上,然後再把所有得補丁都安裝上。
3、
在這裏插入圖片描述
在上面這個安裝路徑中找對對應版本得nbody_vs2015.sln 在Visio studio 2015中進行編譯,點擊生成解決方案。我同時在debug和release進行了編譯,因爲怕出錯有問題。
4、在Visio-視圖-其他-屬性管理器中,找到鏈接器-輸入-附加項添加cudll.lib。
5、
在這裏插入圖片描述
在這個路徑中找到nbody得應用程序,雙擊之後,顯示如下圖。
在這裏插入圖片描述
7、cudnn得安裝如
https://docs.nvidia.com/deeplearning/sdk/cudnn-install/index.html#install-windows
此教程一步步安裝。

8、把在這裏插入圖片描述
這個安裝文件放入matlab得安裝文件中,按照這個博客得步驟一步步來安裝
https://blog.csdn.net/qq_28618765/article/details/79590040

把對應得文件放到相應的位置,要放三個文件
還需要設一個環境變量。
9、最後打開matlab進行編譯。
挨個輸入程序

>> cd D:\matlab\matconvnet-1.0-beta25
>> addpath matlab
 mex -setup

按照提示輸入

mex -setup:C:\Users\86183\AppData\Roaming\MathWorks\MATLAB\R2016a\mex_C_win64.xml C

10、無錯之後進行編譯
(1)CPU編譯

vl_compilenn

顯示mex編譯成功
可以進行測試,測試程序:

vl_testnn

(2)GPU編譯


vl_compilenn('enableGpu', true, ...
               'cudaRoot', 'D:\CUDA9', ...
               'cudaMethod', 'nvcc', ...
               'enableCudnn', true, ...
               'cudnnRoot', 'D:\matlab\matconvnet-1.0-beta25\local\cuda') ;

第一個爲cuda的安裝路徑
第二個爲cudann所放置的位置。
等待一段時間,直至編譯成功

可以進行gpu安裝的測試,程序如下

 vl_testnn('gpu',true)

編譯將近半個小時,終於成功了,顯示如下:
在這裏插入圖片描述
就這樣,就成功了
也可以在
在這裏插入圖片描述
這裏的文件中找到案例程序來嘗試,是否安裝成功

希望這個會對大家有所幫助。
之前發了好多好多,都沒解決一定的問題。

第二天發現,Matlconvnet可以編譯成功,但是每次都開matlab都需要編譯一次。怎麼辦?

關閉matlab重新打開後,先運行
gpuDevice
然後就可以正常使用了Matconvnet了

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章