win10下編譯Caffe(GPU和CPU),血的教訓,win10+cuda8.0+cudnn5.1+Visual Studio 14 2015+python2.7(anaconda)+camke

0、寫在前面

    ubuntu編譯caffe可以見我的其他博客。本次我在win10上編譯Caffe遇到了前所未有的阻礙,因爲我是做目標檢測的,所以如果編譯BLVC版的Caffe,就會缺少一些層(如permute層),因此我需要編譯的其實是帶有ssd的caffe。

    首先是找一份caffe-ssd的代碼,github找了很多版本,有一以下,以下都有人編譯成功,但是我最終是用(3)中的代碼編成功,編譯(1)、(2)時候都遇到一些難以解決的問題,可能是和我的Cuda版本有關,但是我已經心累不想再驗證了。

    (1)https://github.com/happynear/caffe-windows

    (2)https://github.com/Microsoft/caffe

    (3)https://github.com/runhang/caffe-ssd-windows (git速度慢的話可以用https://gitee.com/luo_zhi_cheng/caffe-ssd-windows

    最終,我發現,在win10上編譯caffe-ssd十分依賴軟件的版本,比如我Cuda的版本,我試過了cuda10.0,cuda9.0,cuda8.0,最終在cuda8.0成功,還有camke的時候,使用過Visual Studio 15 2017,Visual Studio 14 2015,最終Visual Studio 14 2015成功,還有python的版本,衆所周知,caffe主要支持python2.7,對於python3也是一般支持python3.5,版本再高可能會出問題。

    最後的最後,我編譯成功的軟件版本是win10+cuda8.0+cudnn5.1+Visual Studio 14 2015+python2.7(anaconda)+camke。

 

1、編譯過程

    (1)踩完坑後,編譯過程其實不難,首先git clone https://gitee.com/luo_zhi_cheng/caffe-ssd-windows,然後cd 進文件夾,新建一個文件夾/build;

    (2)像cuda8.0+cudnn5.1+Visual Studio 14 2015這三樣東西的安裝就不多贅述,而對於python2.7(anaconda),可能是我電腦裝了太多python,cmake時候老是獲取不到對的python版本,於是重新安裝一遍。。。(如果使用python3.5不能保證一定成功,但是理論應該沒問題)

    (2.5)這裏之前寫博客忘記了,你還需要手動下載libraries_v140_x64_py27_1.1.0.tar.bz2,然後放到C:\Users\luo\.caffe\dependencies\download目錄中去,下載地址爲https://github.com/willyd/caffe-builder/releases

    (3)打開cmake,使用Visual Studio 14 2015+x64開始Configure,每每第一次肯定會報錯,你需要把cmake中BLAS選項的Atlas改成Open,再重新Configure,這次就沒問題了,此時你可以看一看裏面打印的信息,匹配的各種軟件版本是不是對的(如果你只是想要編譯CPU版本的caffe,只需要在cmake中CPU_ONLY選項後面打上勾,後面的操作和GPU就沒有區別了),Configure之後就是Generate,順利,然後就是Open Project。

    (4)Open Project按下去,就會在vs2015中打開項目,修改成Release+x64之後,設置ALL_BUILD爲啓動項目,開始生成,這一步如果是GPU將是很漫長的。。。成功之後設置INSTALL爲啓動項目,開始生成,沒有報錯的話,你就成功編譯好了!

    (5)將caffe-ssd-windows/python下的caffe文件夾拷貝到python的site-packages文件夾下,然後在cmd中輸入import caffe,沒有報錯即爲成功!最後在系統環境變量添加.\caffe-ssd-windows\build\install\bin就over!

 

2、後記

    (1) 編譯完之後,我將cuda10.0覆蓋了cuda8.0的環境,依然能夠在python中使用caffe。

    (2)發現在vs2017 的C++接口,也是cuda10.0,也能夠使用caffe。

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