[Pkg-opencl-devel] defaulting to installing all ICDs?

Rebecca N. Palmer rebecca_palmer at zoho.com
Sat Jan 31 08:10:40 UTC 2015


To clarify my previous message: while I do still think this is a good 
idea, I no longer want to rush it through for Ubuntu.

> For example, the Xorg
> server pulls in "xserver-xorg-video-all | xorg-driver-video".
That's where I got the idea from.

> So that would become
>
>  [application-using-opencl Depends:]  opencl-icd-all | opencl-icd
Yes, and
opencl-icd-all Depends: pocl-opencl-icd | mesa-opencl-icd | 
beignet-opencl-icd
Recommends: pocl-opencl-icd, mesa-opencl-icd, beignet-opencl-icd

i.e. ORed Depends (with pocl first because it will always at least work, 
though slowly), ANDed Recommends, to default to all ICDs but still be 
installable when not all the ICDs are (pocl-opencl-icd is currently 
amd64-only, and Ubuntu doesn't have mesa-opencl-icd).

> should we add a new source package opencl-defaults that would handle
> this or should we stick it into ocl.icd?
I'd use ocl-icd; given that we also plan to modify it to sort the 
platform list as "working-on-this-hardware ones first, roughly sorted by 
speed (mesa, beignet, pocl) if there is more than one such" (so 
applications that just take the first platform get something 
reasonable), adding a new ICD would probably mean rebuilding ocl-icd anyway.

> And maybe we should only add "conforming" icds to the Depends of the new
> -all package, i.e. the ones that handle missing hardware gracefull.
As far as I am aware, they all now do (and once beignet 1.0.1 is 
uploaded will also all handle being installed together, #768185); it's 
applications that may take the first platform then fail because it 
doesn't have any devices.




More information about the Pkg-opencl-devel mailing list