Hello,
I have an application that uses CUDA running as a user. It runs correctly.
I want to have this application run when the computer (Orin NX) boots. For this I created a service that runs the application. However when I try to run this service it crashes. When I look at the output in journalctl I get the following:
OpenCV(4.8.0-dev)
/opencv/modules/core/src/cuda_stream.cpp:305: error: (-217:Gpu API call) CUDA driver version is insufficient for CUDA runtime version in function ‘Impl’
When I searched for the version file I found the following:
{
“cuda” : {
“name” : “CUDA SDK”,
“version” : “11.4.19”
},
“cuda_compat” : {
“name” : “CUDA Specific Libraries”,
“version” : “11.4.31478197”
},
“cuda_cudart” : {
“name” : “CUDA Runtime (cudart)”,
“version” : “11.4.298”
},
“cuda_cuobjdump” : {
“name” : “cuobjdump”,
“version” : “11.4.315”
},
“cuda_cupti” : {
“name” : “CUPTI”,
“version” : “11.4.298”
},
“cuda_cuxxfilt” : {
“name” : “CUDA cu++ filt”,
“version” : “11.4.300”
},
“cuda_gdb” : {
“name” : “CUDA GDB”,
“version” : “11.4.298”
},
“cuda_nvcc” : {
“name” : “CUDA NVCC”,
“version” : “11.4.315”
},
“cuda_nvdisasm” : {
“name” : “CUDA nvdisasm”,
“version” : “11.4.298”
},
“cuda_nvml_dev” : {
“name” : “CUDA NVML Headers”,
“version” : “11.4.298”
},
“cuda_nvprune” : {
“name” : “CUDA nvprune”,
“version” : “11.4.298”
},
“cuda_nvrtc” : {
“name” : “CUDA NVRTC”,
“version” : “11.4.300”
},
“cuda_nvtx” : {
“name” : “CUDA NVTX”,
“version” : “11.4.300”
},
“cuda_samples” : {
“name” : “CUDA Samples”,
“version” : “11.4.300”
},
“cuda_sanitizer_api” : {
“name” : “CUDA Compute Sanitizer API”,
“version” : “11.4.298”
},
“cuda_thrust” : {
“name” : “CUDA C++ Core Compute Libraries”,
“version” : “11.4.298”
},
“libcublas” : {
“name” : “CUDA cuBLAS”,
“version” : “11.6.6.84”
},
“libcudla” : {
“name” : “CUDA cuDLA”,
“version” : “11.4.298”
},
“libcufft” : {
“name” : “CUDA cuFFT”,
“version” : “10.6.0.202”
},
“libcurand” : {
“name” : “CUDA cuRAND”,
“version” : “10.2.5.297”
},
“libcusolver” : {
“name” : “CUDA cuSOLVER”,
“version” : “11.2.0.297”
},
“libcusparse” : {
“name” : “CUDA cuSPARSE”,
“version” : “11.6.0.299”
},
“libnpp” : {
“name” : “CUDA NPP”,
“version” : “11.4.0.287”
},
“nsight_compute” : {
“name” : “Nsight Compute”,
“version” : “2021.2.8.1”
}
}
So it would seem as though the SDK version (11.4.19) really is older than the runtime version (11.4.298)
What I don’t understand is why, then, does my application work perfectly fine when I run it from the terminal?
Also, since this is on an Orin NX, that I installed using the Jetpack 5.1.2 images and packages through Nvidia SDK Manager, how are the components not compatible?
Lastly, how can I fix this?
Thanks