安装Caffe与Faster RCNN遇到的问题汇总解决方案(GPU版)

历时一天的时间终于把Caffe和Faster RCNN搞定了,关于安装Caffe与Faster RCNN之前的cuda与cudnn请自行百度安装,安装的版本必须匹配起来,否则后面会出现各种意想不到的问题。

安装Caffe遇到的问题如下:

1、Make报错显示:nvcc fatal : Unsupported gpu architecture 'compute_20'

此问题需要修改Makefile.config文件,修改成如下内容。

# CUDA architecture setting: going with all of them.
# For CUDA < 6.0, comment the *_50 through *_61 lines for compatibility.
# For CUDA < 8.0, comment the *_60 and *_61 lines for compatibility.
# For CUDA >= 9.0, comment the *_20 and *_21 lines for compatibility.
CUDA_ARCH :=     -gencode arch=compute_30,code=sm_30 \
        -gencode arch=compute_35,code=sm_35 \
        -gencode arch=compute_50,code=sm_50 \
        -gencode arch=compute_52,code=sm_52 \
        -gencode arch=compute_60,code=sm_60 \
        -gencode arch=compute_61,code=sm_61 \
        -gencode arch=compute_61,code=compute_61

将原有的-gencode arch=compute_20,code=sm_20 \ 与-gencode arch=compute_21,code=sm_21 \删掉,因为我安装的是cuda 9.0

2、报错显示找不到hdf5等文件,还是需要修改Makefile.config文件,修改内容如下:

# Whatever else you find you need goes here.
INCLUDE_DIRS := $(PYTHON_INCLUDE) /usr/local/include /usr/include/hdf5/serial
LIBRARY_DIRS := $(PYTHON_LIB) /usr/local/lib /usr/lib /usr/lib/x86_64-linux-gnu /usr/lib/x86_64-linux-gnu/hdf5/serial

添加的内容已经标红。

3、另外关于第二种报错还需要修改Makefle文件,修改内容如下,增加内容已经标红

LIBRARIES += glog gflags protobuf boost_system boost_filesystem m hdf5_serial_hl hdf5_serial 
4、关于编译过程中报protoc版本过低或者过高等问题。

此时需要查看自己电脑版本的protoc版本是多少,输入命令:protoc --version,另外输入:whereis protoc 查看一下protoc的默认路径,此时解决方法是注释掉安装的Anaconda路径并生效,然后卸载Anaconda里面的安装包,最后会显示默认为系统的protoc,然后在make就成功了。

5、其他问题可能是caffe需要的安装包没有安装全。

搞定Caffe后感觉整个世界都安静了,马上着手安装Faster RCNN,没想到遇到的又是狂风暴雨。

1、将已经编译好的caffe下的/caffe/include/caffe/layers下的所有cudnn开头的文件全部复制到Faster RCNN相应的路径下。

2、将/caffe/include/caffe/util文件下的cudnn.hpp复制到Faster RCNN相应的路径下。

3、将/caffe/src/caffe/layers文件下的cudnn开头的激活函数命名的文件,后缀为cu或者cpp复制到Faster RCNN相应的路径下,并将cudnn_conv_layer.cu里的

cudnnConvolutionBackwardData_v3 替换为 cudnnConvolutionBackwardData

cudnnConvolutionBackwardFilter_v3 替换为 cudnnConvolutionBackwardFilter

猜你喜欢

转载自blog.csdn.net/Blackrosetian/article/details/85158918