The Jetpack 6 available for Orin supports a CUDA runtime version only until 12.2.
This is confirmed by nvidia-smi
.
+---------------------------------------------------------------------------------------+
| NVIDIA-SMI 540.2.0 Driver Version: N/A CUDA Version: 12.2 |
|-----------------------------------------+----------------------+----------------------+
| GPU Name Persistence-M | Bus-Id Disp.A | Volatile Uncorr. ECC |
| Fan Temp Perf Pwr:Usage/Cap | Memory-Usage | GPU-Util Compute M. |
| | | MIG M. |
|=========================================+======================+======================|
| 0 Orin (nvgpu) N/A | N/A N/A | N/A |
| N/A N/A N/A N/A / N/A | Not Supported | N/A N/A |
| | | N/A |
+-----------------------------------------+----------------------+----------------------+
+---------------------------------------------------------------------------------------+
| Processes: |
| GPU GI CI PID Type Process name GPU Memory |
| ID ID Usage |
|=======================================================================================|
| No running processes found |
+---------------------------------------------------------------------------------------+
Per the excellently explained post here (Different CUDA versions shown by nvcc and NVIDIA-smi - Stack Overflow ), with the above CUDA driver, a CUDA runtime version greater than 12.2 is not guaranteed to work. However, NVIDIA’s CUDA download selection does provide the choices for Linux → aarch64-jetson → Native → Ubuntu → 22.04 for both CUDA 12.4 and 12.6.
CUDA Toolkit 12.4 Downloads | NVIDIA Developer
It’s not clear how these could ever work if the driver only supports up until 12.2 and there isn’t a higher Jetpack image available either for download or via ‘apt’ repository update post installation.
The reason I asked for 12.4 is that torch 2.4.0 has official pre-built wheel files for aarch64 only for CUDA 12.4 (and not for CUDA 12.2 or 12.1 or another version). Trying to run that with Jetpack 6 with the above CUDA driver API expectedly yields the error:
RuntimeError: GET was unable to find an engine to execute this computation
which is indicative of a mismatch between the CUDA version pytorch was compiled with (12.4) and the one supported by the CUDA driver. Note that I do have CUDA toolkit 12.4 installed, and so the CUDA 12.4 runtime itself is available, but this isn’t expected to work correctly because of the version of the CUDA driver.
$ nvcc --version
nvcc: NVIDIA (R) Cuda compiler driver
Copyright (c) 2005-2024 NVIDIA Corporation
Built on Thu_Mar_28_02:23:12_PDT_2024
Cuda compilation tools, release 12.4, V12.4.131
So, how are the CUDA 12.4 and 12.6 toolkits for ubuntu 22.04 on jetson orin nano expected to function? Thanks.