(cuDNN Error: CUDNN_STATUS_BAD_PARAM: Permission denied) - YOLOV4 object detection

2.8k views Asked by At

I am trying to detecting objects using yolov4. Anyway, when i run this command:

./darknet detector demo cfg/coco.data cfg/yolov4-csp.cfg yolov4-csp.weights -ext_output videoplayback.mp4

I am taking this:

CUDA-version: 10020 (10020), cuDNN: 8.2.1, CUDNN_HALF=1, GPU count: 1
CUDNN_HALF=1 OpenCV version: 4.1.1 Demo 0 : compute_capability = 620, cudnn_half = 0, GPU: NVIDIA Tegra X2 net.optimized_memory = 0 mini_batch = 1, batch = 8, time_steps = 1, train = 0 layer filters size/strd(dil) input output 0 Create CUDA-stream - 0

cuDNN status Error in: file: ./src/dark_cuda.c : () : line: 176 : build time: Apr 7 2022 - 13:47:20

cuDNN Error: CUDNN_STATUS_BAD_PARAM Darknet error location: ./src/dark_cuda.c, cudnn_check_error, line #204 cuDNN Error: CUDNN_STATUS_BAD_PARAM: Permission denied

How can i solve this problem?

2

There are 2 answers

0
jemrlee On

In my case I've resolved with CUDA and CUDNN re-installation.

First at the my computer has installed several CUDA version and had many version change. And Darknet was built with 12.1 with CUDNN, but the operation env has CUDA 11.8 without CUDA.

I've removed old libcudnn8 and install correct version of libcudnn8 and libcudnn8-dev then works fine.

Hope this helps

0
KyleChen On

For me, when I met this problem is because I didn't set the CMAKE_CUDA_ARCHITECTURE variable, the default vaule was 52. But actually it matters alot, because every Nvidia GPU is with different architectures. So I looked up "https://developer.nvidia.com/cuda-gpus" to see "Compute Capability" of my GPU, then I changed it(mine is RTX3080: 86) and re-compile again, it worked.