標籤:

一. caffe2之安裝與編譯

1. CPU版本

直接按照官網教程即可:Install

我的cpu版本安裝在筆記本上,系統是64位的Ubuntu 14.04,一步成功


2. GPU版本

先按照官網教程:Install

環境:

伺服器:64位的Ubuntu 16.04

GPU :2塊Tesla K80

中間出現了一些問題和解決方法如下:

①. cudnn版本不對, 錯誤提示為:

error: identifier "CUDNN_DATA_INT32" is undefined

解決方法:原因是我之前裝了cudnn5.1,看下面兩個文件可知,我需要更新cudnn

cudnn 5.1 cudnn.hn typedef enumn {n CUDNN_DATA_FLOAT = 0,n CUDNN_DATA_DOUBLE = 1,n CUDNN_DATA_HALF = 2,n } cudnnDataType_t;ncudnn 6.0 cudnn.hn typedef enumn {n CUDNN_DATA_FLOAT = 0,n CUDNN_DATA_DOUBLE = 1,n CUDNN_DATA_HALF = 2,n CUDNN_DATA_INT8 = 3,n CUDNN_DATA_INT32 = 4,n CUDNN_DATA_INT8x4 = 5n } cudnnDataType_t;n

cudnn更新方法如下:

去Nvidia官網下載cuDNN 6.0版本後解壓n sudo cp lib* /usr/local/cuda/lib64/n sudo cp cudnn.h /usr/local/cuda/include/n更新軟鏈接ncd /usr/local/cuda/lib64/nsudo rm -rf libcudnn.so libcudnn.so.5nsudo ln -s libcudnn.so.6.0.21 libcudnn.so.6nsudo ln -s libcudnn.so.6 libcudnn.son更新鏈接庫:n sudo ldconfign


3. 編譯:

編譯出錯直接用下面的方法解決, 誰試誰知道

cd $caffe2_rootnmkdir buildncd buildnsudo cmake -DCUDNN_INCLUDE_DIR=/usr/local/cuda/include -DCUDNN_LIBRARY=/usr/local/cuda/lib64/libcudnn.so -DCUDA_USE_STATIC_CUDA_RUNTIME=OFF ..nsudo maken

一步成功。


4. gflags錯誤:

錯誤信息:

ERROR: something wrong with flag flagfile in file /home/XXX/software

解決方法:重新手動安裝gflags

下載git gflagsngit clone https://github.com/gflags/gflagsnmkdir build && cd buildnccmake .. #打開BUILD_SHARED_LIBS 和兩個 *LIBnsudo makensudo make installn

安裝編譯階段只遇到這些問題,如有新的問題,再補充...


推薦閱讀:

二. caffe2之保存/讀取模型並retrain

TAG:Caffe2 |