[Pkg-opencl-devel] pocl ITP, and opencl-icd selection

Rebecca N. Palmer r.palmer at bham.ac.uk
Tue Feb 4 23:15:18 UTC 2014


1) The pocl proposed package (ITP #676504, 
https://alioth.debian.org/anonscm/git/collab-maint/pocl.git) has not 
been touched for approximately a year; did it hit a technical problem, 
or have you just not had time?

2) Do you have a plan for how to ensure the correct ICD for the hardware 
is installed?  The current "ICDs Provide: opencl-icd" doesn't do this: 
"apt-get install opencl-icd" selects and successfully installs beignet, 
even on hardware where this is non-functional.

The current solution for video drivers (dependencies of xserver-xorg) is 
to default to installing all the free ones, but allow the user to choose 
one (possibly non-free) if they want to.  Exactly copying their scheme 
(showing 3 ICDs for simplicity; the extension to more should be obvious) 
would give:

#application/library that needs OpenCL
python-pyopencl Depends: libopencl1, opencl-icd-all | opencl-icd

#new metapackage
opencl-icd-all Depends: pocl-opencl-icd, beignet

#free ICDs
pocl-opencl-icd Provides: opencl-icd
beignet Provides: opencl-icd

#non-free ICDs
nvidia-opencl-icd Provides: opencl-icd

However, a simpler (no need to change the applications, no extra package 
name) but as-yet-untested way to get the same effect might be:

#application/library that needs OpenCL
python-pyopencl Depends: libopencl1, opencl-icd

#new metapackage, and also still the virtual package
#list the CPU implementation first, so --no-install-recommends picks it
opencl-icd Depends: pocl-opencl-icd | beignet
Recommends: pocl-opencl-icd, beignet

#free ICDs don't need to Provide anything (but it doesn't break anything 
if they do)
pocl-opencl-icd
beignet

#non-free ICDs must keep the Provides
nvidia-opencl-icd Provides: opencl-icd



More information about the Pkg-opencl-devel mailing list