Skip to main content
Question

OpenCL platforms not found, inference renders poorly

  • January 26, 2026
  • 1 reply
  • 18 views

On an AMD CPU with ubuntu 24.04, I see these warnings. Inference does open, but it seems to render poorly.

(venv) my@machine:~/voyager-sdk$ ./inference.py yolov8l-coco-onnx media/traffic1_1080p.mp4 media/traffic1_1080p.mp4 media/traffic1_1080p.mp4 media/traffic1_1080p.mp4
INFO    : Could not exec vainfo: Command '['vainfo']' returned non-zero exit status 3.
WARNING : Failed to get OpenCL platforms : clGetPlatformIDs failed: PLATFORM_NOT_FOUND_KHR
WARNING : Please check the documentation for installation instructions

OpenCL doesn't find any platforms

(venv) my@machine:~/voyager-sdk$ clinfo
Number of platforms                               0

ICD loader properties
 ICD loader Name                                 OpenCL ICD Loader
 ICD loader Vendor                               OCL Icd free software
 ICD loader Version                              2.3.2
 ICD loader Profile                              OpenCL 3.0

1 reply

Steven Hunsche
Axelera Team
Forum|alt.badge.img

Hi Marie!

AMD is always a fun one! I think installing some display drivers could help you:
 

cd /tmp
wget --referer http://support.amd.com https://repo.radeon.com/amdgpu-install/latest/ubuntu/noble/amdgpu-install_7.2.70200-1_all.deb
sudo apt install ./amdgpu-install_7.2.70200-1_all.deb
sudo apt update
amdgpu-install --usecase=graphics,opencl --no-32 --no-dkms

 

This should remove the OpenCL warning and also install some other (e)GPU packages, which should improve rendering.

 

Upon further investigation, I think our SDK is missing a tiny piece today (v1.5.3) for AMD chips. We’ll add it in a release soon. For now, please go into your sdk and open up the file operators/axstreamer/src/AxOpenCl.cpp, then

  • In the get_order_preference function, add the following after the “NVIDIA”s line

} else if (preference == "amd") {
    return { "AMD"s };

  • In the get_order_preference function, add “AMD”, to the return statement, expanding the vector
  • In the build_cl_details function, rename the which_cl argument to cl_choice
  • In the same build_cl_details function, add the following line at the beginning of the function

std::string which_cl = cl_choice ? cl_choice : "";

  • In the same build_cl_details function, replace the line

std::string preference = which_cl ? which_cl : "auto";

with the line

std::string preference = which_cl.empty() ? "auto" : which_cl;

 

Then go back into your SDK and recompile these files with the command

make operators

 

Hope this helps!