How to set up Nvidia GPGPU computing using just the official Debian 11 repos
If you don’t know if or how your Nvidia GPU is supported by Debian, try running nvidia-detect
from the nvidia-detect
package.
For supported chips, setting up Nvidia GPGPU computing is as simple as installing the nvidia-opencl-icd
package (from the non-free
component). This will pull in a large swathe of recommended packages like the non-free, proprietary Nvidia graphics driver, libcuda1
, nvidia-smi
, etc. See:
apt install nvidia-opencl-icd
The following additional packages will be installed:
glx-alternative-mesa glx-alternative-nvidia glx-diversions libcuda1 libnvidia-cfg1 libnvidia-compiler libnvidia-ml1 libnvidia-ptxjitcompiler1 libpci3 nvidia-alternative
nvidia-installer-cleanup nvidia-kernel-common nvidia-kernel-dkms nvidia-kernel-support nvidia-legacy-check nvidia-modprobe nvidia-opencl-common nvidia-persistenced nvidia-smi
nvidia-support ocl-icd-libopencl1 pci.ids pciutils update-glx
Suggested packages:
libgl1-mesa-glx | libgl1 nvidia-driver | nvidia-driver-any nvidia-cuda-mps wget | curl | lynx-cur
Recommended packages:
libcuda1:i386
The following NEW packages will be installed:
glx-alternative-mesa glx-alternative-nvidia glx-diversions libcuda1 libnvidia-cfg1 libnvidia-compiler libnvidia-ml1 libnvidia-ptxjitcompiler1 libpci3 nvidia-alternative
nvidia-installer-cleanup nvidia-kernel-common nvidia-kernel-dkms nvidia-kernel-support nvidia-legacy-check nvidia-modprobe nvidia-opencl-common nvidia-opencl-icd
nvidia-persistenced nvidia-smi nvidia-support ocl-icd-libopencl1 pci.ids pciutils update-glx
0 upgraded, 25 newly installed, 0 to remove and 0 not upgraded.
Need to get 50.1 MB of archives.
After this operation, 157 MB of additional disk space will be used.
Now you need to reboot so that the proprietary Nvidia driver will be loaded.
Now you can list general information about your card by running nvidia-smi
from the nvidia-smi
package, or OpenCL capabilities by running clinfo
from the clinfo
package. This also works on headless machines.
Also see my related code repository: https://github.com/michaelfranzl/image_debian-gpgpu