Out of curiosity, I've tried to install OpenCL on my Ubuntu 21.04 installation.
I believe there may be OpenCL 1.1 support available in the open-source Nouveau video driver for Nvidia graphics cards. This is the driver I'm using (and am stuck with).
My Nvidia hardware is a dated 9400 GT card, but an upgrade to a 9800 GT is possible.
$ sudo apt install mesa-opencl-icd # Install opencl, ICD and compilers.
$ sudo usermod -a -G video username # Add me to the video group for display access.
$ sudo clinfo
Number of platforms 1
Platform Name Clover
Platform Vendor Mesa
Platform Version OpenCL 1.1 Mesa 21.0.1
Platform Profile FULL_PROFILE
Platform Extensions cl_khr_icd
Platform Extensions function suffix MESA
Platform Name Clover
Number of devices 0
NULL platform behavior
clGetPlatformInfo(NULL, CL_PLATFORM_NAME, ...) Clover
clGetDeviceIDs(NULL, CL_DEVICE_TYPE_ALL, ...) No devices found in platform [Clover?]
clCreateContext(NULL, ...) [default] No devices found in platform
clCreateContextFromType(NULL, CL_DEVICE_TYPE_DEFAULT) No devices found in platform
clCreateContextFromType(NULL, CL_DEVICE_TYPE_CPU) No devices found in platform
clCreateContextFromType(NULL, CL_DEVICE_TYPE_GPU) No devices found in platform
clCreateContextFromType(NULL, CL_DEVICE_TYPE_ACCELERATOR) No devices found in platform
clCreateContextFromType(NULL, CL_DEVICE_TYPE_CUSTOM) No devices found in platform
clCreateContextFromType(NULL, CL_DEVICE_TYPE_ALL) No devices found in platform
ICD loader properties
ICD loader Name OpenCL ICD Loader
ICD loader Vendor OCL Icd free software
ICD loader Version 2.2.14
ICD loader Profile OpenCL 3.0
So, as you can see I'm clueless. What I'm really after is someone who can direct me to appropriate resources, so that I can learn how to setup mesa's OpenCL implementation, as well as how to invoke and use the associated compilers, ICD, etc.?
Any help would be appreciated.
M.
Tried a bunch of other stuff: Checked that /etc/OpenCL/vendors/*.dri file is there, and filled-in correctly. All the requisite packages and files are in place. Why it can't see my GPU, I'm clueless about.