1

I just had a weird experience while building caffe..

I executed make --jobs=4 and it ran all well till it reached 92%. Then while it was linking the CXX executables compute_image_mean, convert_image set, extract_features, and caffe it threw the error ../lib/libcaffe.so.1.0.0-rc3: undefined reference to 'cudnnConvolutionBackwardData_v3'.

What worries me here is that I have successfully built caffe before, with the same installation, same paths, the same device..basically the same everything. What exactly is going on? I haven't touched cudnn and installed DIGITS yesterday. I had some installation errors because of the caffe path not being recognized (that's why I'm here and building it again), but no issue in its requirement for cudnn, which proves nothing is wrong with cudnn.

Aside from advice on how to fix it, I would like to know if caffe automatically resets it's paths ovver time or something similar.

Operating system: Ubuntu 14.04 LTS CUDA version: 7.5

Full output:

Linking CXX shared library ../../lib/libcaffe.so
[ 90%] Built target caffe
Scanning dependencies of target caffe.bin
[ 91%] Building CXX object tools/CMakeFiles/caffe.bin.dir/caffe.cpp.o
Linking CXX executable caffe
../lib/libcaffe.so.1.0.0-rc3: undefined reference to `cudnnConvolutionBackwardData_v3'
../lib/libcaffe.so.1.0.0-rc3: undefined reference to `cudnnConvolutionBackwardFilter_v3'
collect2: error: ld returned 1 exit status
make[2]: *** [tools/caffe] Error 1
make[1]: *** [tools/CMakeFiles/caffe.bin.dir/all] Error 2
make: *** [all] Error 2

Thanks

Rushat Rai
  • 743
  • 2
  • 15
  • 31
  • For DIGITS, it's recommended that you use NVIDIA/caffe instead of BVLC/caffe. – Luke Yeager Mar 14 '17 at 16:11
  • @LukeYeager Yes, I am aware, however, I read that BVLC/Caffe works too. Also, this does not seem like an error related to digits at all, since this an error when building caffe with cmake. Thanks :) – Rushat Rai Mar 16 '17 at 10:50

1 Answers1

0

I came across the same problem on Ubuntu 16.04, CUDA 8.0.

I just edited the file src/caffe/layers/cudnn_conv_layer.cu by removing the _v3 for the two functions, and the error went away.

Not the most sound solution, but worth a try.

zanbri
  • 5,958
  • 2
  • 31
  • 41