The "Clover" Gallium3D state tracker to Mesa for providing OpenCL support can now be used with an ICD loader.
OpenCL has an ICD extension, which is for an Installable Client Driver, and allows for multiple OpenCL implementations to exist on the same system. The OpenCL ICD loader library lets applications choose a platform and dispatch the OpenCL API calls to the underlying library. This is quite important for systems with multiple different CPUs/GPUs exposing OpenCL support.
The Clover state tracker can now be loaded by an ICD loader with a new patch hitting the Mesa mailing list
. The --enable-opencl-icd
build argument for Mesa lets the OpenCL support be loaded by an OpenCL ICD implementation.
This patch comes via AMD's Tom Stellard. He also updated to OpenCL 1.2 headers
as needed by the common open-source ocl-icd implementation