[Pkg-opencl-devel] OpenCL and multiarch

Graham Inggs graham at nerve.org.za
Tue Feb 24 07:32:20 UTC 2015


On 19 February 2015 at 01:00, Simon Richter <sjr at debian.org> wrote:
> I've asked this about a year or two ago already, but dropped the ball.
> How should we deal with ICDs in a multiarch system, especially with a
> system like wine, which pulls in both i386 and amd64 ICD loaders?
>
> The easiest approach is probably to use (e.g.)
>
>   /etc/OpenCL/intel.i386.icd
>   /etc/OpenCL/intel.amd64.icd
>
> with paths pointing to multiarch locations, which allows for
> co-installable packages, but requires the ICD loader to properly handle
> the error from attempting to load libraries for the wrong architecture.
>
> If better separation is desired, we might need to poke the Khronos group.

Hi Simon

On my (Ubuntu) system, all I have in /etc/OpenCL is a directory named
vendors containing a text file, nvidia.icd (installed by
nvidia-opencl-icd-331), containing:
libnvidia-opencl.so.1

I have symlinks (installed by nvidia-opencl-icd-331):
/usr/lib/x86_64-linux-gnu/libnvidia-opencl.so.1
/usr/lib//i386-linux-gnu/libnvidia-opencl.so.1
which both point to libnvidia-opencl.so.331.113 in their respective directories.

I also have the files, which I understand are the actual ICD loaders,
installed by ocl-icd-libopencl1:
/usr/lib/i386-linux-gnu/libOpenCL.so.1
/usr/lib/x86_64-linux-gnu/libOpenCL.so.1

I am able to run a 32-bit OpenCL application, GPU Caps Viewer [1], in WINE.

I don't see a problem here.

Regards
Graham


[1] http://www.ozone3d.net/gpu_caps_viewer/



More information about the Pkg-opencl-devel mailing list