caffe 使用cudnn 加速报错

来源:互联网 发布:慈溪人民医院挂号软件 编辑:程序博客网 时间:2024/06/07 08:30
./include/caffe/util/cudnn.hpp: In function ‘void caffe::cudnn::createPoolingDesc(cudnnPoolingStruct**, caffe::PoolingParameter_PoolMethod, cudnnPoolingMode_t*, int, int, int, int, int, int)’:
./include/caffe/util/cudnn.hpp:145:3: error: ‘CUDNN_PROPAGATE_NAN’ was not declared in this scope
   CUDNN_CHECK(cudnnSetPooling2dDescriptor_v4(*pool_desc, *mode,
   ^
./include/caffe/util/cudnn.hpp:145:3: error: there are no arguments to ‘cudnnSetPooling2dDescriptor_v4’ that depend on a template parameter, so a declaration of ‘cudnnSetPooling2dDescriptor_v4’ must be available [-fpermissive]
   CUDNN_CHECK(cudnnSetPooling2dDescriptor_v4(*pool_desc, *mode,
   ^
./include/caffe/util/cudnn.hpp:145:3: note: (if you use ‘-fpermissive’, G++ will accept your code, but allowing the use of an undeclared name is deprecated)
./include/caffe/util/cudnn.hpp: At global scope:
./include/caffe/util/cudnn.hpp:151:40: error: variable or field ‘createActivationDescriptor’ declared void
 inline void createActivationDescriptor(cudnnActivationDescriptor_t* activ_desc,
                                        ^
./include/caffe/util/cudnn.hpp:151:40: error: ‘cudnnActivationDescriptor_t’ was not declared in this scope
./include/caffe/util/cudnn.hpp:151:69: error: ‘activ_desc’ was not declared in this scope
 inline void createActivationDescriptor(cudnnActivationDescriptor_t* activ_desc,
                                                                     ^
./include/caffe/util/cudnn.hpp:152:27: error: expected primary-expression before ‘mode’
     cudnnActivationMode_t mode) {
                           ^

make: *** [.build_release/src/caffe/util/db.o] Error 1

解决方法:

因为ssd 太老了,我的cudnn 是5.1 的版本 

所以需要两者相匹配:


原创粉丝点击