py-faster-rcnn(旧版caffe)与cudnn6配置出问题解决方案
在服务器上配置好caffe环境后想装个faster-rcnn做目标检测用。由于gpu是1080ti所以配的cuda及cudnn都比较新。
安装rbg大神github上进行到make pycaffe时提示cudnn compile出错。
一通搜索后发现是faster-rcnn是默认老版本的caffe支持cudnn4,对用cudnn6需要做些改动如下:
1.用最新caffe源码的以下文件替换掉faster rcnn 的对应文件(注意不要替换全部cudnn文件...会有其他错误 目前不清楚啥情况)
include/caffe/layers/cudnn_relu_layer.hpp, src/caffe/layers/cudnn_relu_layer.cpp, src/caffe/layers/cudnn_relu_layer.cu
include/caffe/layers/cudnn_sigmoid_layer.hpp, src/caffe/layers/cudnn_sigmoid_layer.cpp, src/caffe/layers/cudnn_sigmoid_layer.cu
include/caffe/layers/cudnn_tanh_layer.hpp, src/caffe/layers/cudnn_tanh_layer.cpp, src/caffe/layers/cudnn_tanh_layer.cu
2. 用caffe源码中的这个文件替换掉faster rcnn 对应文件
include/caffe/util/cudnn.hpp
3. 将 faster rcnn 中的 src/caffe/layers/cudnn_conv_layer.cu 文件中的所有(其实应该就各一处)
cudnnConvolutionBackwardData_v3 函数名替换为 cudnnConvolutionBackwardData
cudnnConvolutionBackwardFilter_v3函数名替换为 cudnnConvolutionBackwardFilter
修改完成后重新make pycaffe成功