ERROR: mnistCUDNN.cpp:541:53: error: there are no arguments to ‘cudnnGetConvolutionForwardAlgorithm"

Hi, I have installed cuda-10.2 and cudnn 7.6.5 .33 successfully but when I am trying to verify my cuDNN installation by compiling the mnistCUDNN samples, I get errors.

OS: Red Hat Enterprise Linux Workstation release 7.9 (Maipo)
Driver Version: 440.33.01
CUDA Version: 10.2
GPU: Quadro RTX 5000

Following this doc for installation :https://docs.nvidia.com/deeplearning/cudnn/archives/cudnn_765/cudnn-install/index.html

I am getting the following error when I try to run make clean && make

[root@mettl001 mnistCUDNN]# make clean && make
rm -rf *o
rm -rf mnistCUDNN
Linking agains cublasLt = true
CUDA VERSION: 10020
TARGET ARCH: x86_64
HOST_ARCH: x86_64
TARGET OS: linux
SMS: 30 35 50 53 60 61 62 70 72 75
/usr/local/cuda/bin/nvcc -ccbin g++ -I/usr/local/cuda/include -I/usr/local/cuda/include -IFreeImage/include  -m64    -gencode arch=compute_30,code=sm_30 -gencode arch=compute_35,code=sm_35 -gencode arch=compute_50,code=sm_50 -gencode arch=compute_53,code=sm_53 -gencode arch=compute_60,code=sm_60 -gencode arch=compute_61,code=sm_61 -gencode arch=compute_62,code=sm_62 -gencode arch=compute_70,code=sm_70 -gencode arch=compute_72,code=sm_72 -gencode arch=compute_75,code=sm_75 -gencode arch=compute_75,code=compute_75 -o fp16_dev.o -c fp16_dev.cu
g++ -I/usr/local/cuda/include -I/usr/local/cuda/include -IFreeImage/include   -o fp16_emu.o -c fp16_emu.cpp
g++ -I/usr/local/cuda/include -I/usr/local/cuda/include -IFreeImage/include   -o mnistCUDNN.o -c mnistCUDNN.cpp
In file included from gemv.h:17:0,
                 from mnistCUDNN.cpp:35:
mnistCUDNN.cpp: In member function ‘void network_t<value_type>::convoluteForward(const Layer_t<value_type>&, int&, int&, int&, int&, value_type*, value_type**)’:
mnistCUDNN.cpp:538:53: error: ‘CUDNN_CONVOLUTION_FWD_PREFER_FASTEST’ was not declared in this scope
                                                     CUDNN_CONVOLUTION_FWD_PREFER_FASTEST,
                                                     ^
error_util.h:66:9: note: in definition of macro ‘checkCUDNN’
     if (status != CUDNN_STATUS_SUCCESS) {                              \
         ^
mnistCUDNN.cpp:541:53: error: there are no arguments to ‘cudnnGetConvolutionForwardAlgorithm’ that depend on a template parameter, so a declaration of ‘cudnnGetConvolutionForwardAlgorithm’ must be available [-fpermissive]
                                                     ) );

Hi @vkasojhaa ,
By any chance have you installed other cudnn versions?
Can you please check on that?

Thanks!

Hi @AakankshaS ,
No, there are no other cudnn versions present. I have tried to install it on a fresh OS.

Hi @vkasojhaa ,
That API should exist in 7.6, but has been removed in v8.x. That error sounds like the compiler is looking at the headers from cudnn v8.x .

Thanks!