Conversation
As of at least CUDA 10.2, the definitions of CUDNN_MAJOR, CUDNN_MINOR, and CUDNN_PATCHLEVEL are in cudnn_version.h rather than cudnn.h. The proposed change adds the contents of cudnn_version.h to the regex search text if it exists.
|
@AaronWebster Please pay attention on CI bot status. It reports trailing whitespace issue: https://pullrequest.opencv.org/buildbot/builders/precommit_docs/builds/24941/steps/whitespace%20opencv/logs/stdio |
|
@AaronWebster CuDNN is not part of CUDA distribution and installed separatelly. Could you also point CuDNN version that you use? I checked the latest CuDNN 7.6.5 distribution for Ubuntu 18.04 and it does not provide |
Remove trailing whitespace.
|
I encountered this issue on an NVIDIA Jetson TX2 dev board running L4T 32.4 (JetPack 4.4). The alternative version file comes from Unfortunately I do not see this version on the CuDNN downloads page; I'm guessing it's only available when cross-compiling using the NVIDIA SDK Manager. I recognize this might be tedious for you to verify independently, can I provide additional information? |
|
@AaronWebster cuDNN 8 seems to have split cuDNN into multiple packages (inference and training, and further subdivisions amongst them). Hence, there is probably a need for a new version header. The cuDNN 8 was an early access release which they seem to have removed now (at least from the release notes). So I am not sure if things from preview release should be incorporated. Secondly, the current cuDNN CMake setup cannot handle multiple binaries yet. So even if this versioning scheme was supported, I think it will still fail to compile/run. |
|
@AaronWebster could you work on linkage fix for new CuDNN version as @YashasSamaga reported? |
|
@AaronWebster friendly reminder. |
|
hi, i'm working on a Jetson nano dev kit. and i was trying to compile opencv with CUDNN, i have encountered the same problem, as a workaround i have modified the file FindCUDNN.cmake at line 68, i have replaced this line |
|
@carloSpa-ET Based on the old retracted release notes, they have split cudnn into multiple binaries. Can you please confirm if they have retained one big cudnn.so binary for backward compatibility? Does your application work with cuDNN? Does your application load correctly and uses GPU for inference? |
|
@carloSpa-ET @AaronWebster could you check for |
|
Hi, sorry for the late reply, it isn't working, I think that as @YashasSamaga said, Nvidia splitted cudnn.so file in multiple files, I haven't find a way to make it work, so I just gave up, and roll back to jetpack 4.3, using cudnn 7.6. I'm sorry of not being of any help. |
|
@AaronWebster could you handle libraries linkage too? |
|
Linking all six binaries might be an easy workaround. But based on my memory of what I had read in the retracted release notes, I think OpenCV requires only two or three of the six. I can't find an archived version of the release notes page to confirm. I am going to take a guess that we need all the inference binaries except the One of these combinations will mostly work:
Or maybe it's best to wait for the official release of cuDNN 8. |
|
@AaronWebster do you have a chance to finish linkage step? |
|
@alalek I propose to close PR till official release of CuDNN 8 as it does not solve build issue, but just hides the problem. |
|
NVIDIA has released the release notes and documentation for cuDNN 8.0 preview version. https://docs.nvidia.com/deeplearning/sdk/cudnn-api/index.html#api-changes
opencv/modules/dnn/src/cuda4dnn/csl/cudnn/convolution.hpp Lines 262 to 270 in 434014b If the documentation is correct, changes are required in the code too. |
|
It looks like the PR is abandoned. I created ticket to track all changes and continue discussion: #17496 |
As of at least CUDA 10.2, the definitions of CUDNN_MAJOR, CUDNN_MINOR, and CUDNN_PATCHLEVEL are in cudnn_version.h rather than cudnn.h. The proposed change adds the contents of cudnn_version.h to the regex search text if it exists.
### Pull Request Readiness ChecklistSee details at https://github.com/opencv/opencv/wiki/How_to_contribute#making-a-good-pull-request
Patch to opencv_extra has the same branch name.