OpenCL Installable Client Driver Loader

A system can have multiple OpenCL™ platforms, each with its own driver and OpenCL version. The SDAccel™ environment supports the OpenCL Installable Client Driver (ICD) extension (cl_khr_icd). This extension allows multiple implementations of OpenCL to co-exist on the same system. The ICD Loader acts as a supervisor for all installed platforms, and provides a standard handler for all API calls.

Applications can choose an OpenCL platform from the list of installed platforms. Based on the platform ID specified by the application, the ICD dispatches the OpenCL host calls to the right runtime.

Xilinx does not provide the OpenCL ICD library, so the following should be used to install the library on your preferred system.


On Ubuntu the ICD library is packaged with the distribution. Install the following packages:
  • ocl-icd-libopencl1
  • opencl-headers
  • ocl-icd-opencl-dev


For RHEL/CentOS 7.X use EPEL 7, install the following packages:
  • ocl-icd
  • ocl-icd-devel
  • opencl-headers