[Slackbuilds-users] Beignet package
pprkut at liwjatan.at
Mon Apr 17 16:54:16 UTC 2017
On Monday, 17 April 2017 18:29:32 CEST 414N wrote:
> I’m currently working on a beignet SlackBuild for SBo and I have some
> trouble in sorting out how to best manage the package installation.
> For the ones who don’t know, beignet <https://01.org/beignet> is Intel’s
> own OpenCL implementation for its graphics and CPU hardware. To properly
> make use of any OpenCL implementation, one needs:
> * an OpenCL ICD loader (|libOpenCL.so|), the entry library that other
> software links-to or dynamically loads at runtime
> * at least one ICD vendor file(s), to make the relevant OpenCL
> implementation installed available to other software through the loader
> For systems running solely on Intel CPU/GPU hardware with no other
> discrete GPU components (namely, Nvidia/AMD), the installation of the
> beignet package would bring:
> * the Intel OpenCL implementation + ICD vendor files
> * OpenCL headers
> The system would still lack the entry point library / ICD loader, but
> this could be managed by means of the ocl-icd
> <https://forge.imag.fr/projects/ocl-icd/> package (in the making
> alongside beignet).
> If one has at least another discrete OpenCL-enabled GPU installed on his
> system (read, an Nvidia and/or an AMD card), then the scenario becomes a
> little more complicated:
> * the OpenCL loader is probably provided by the Nvidia/AMD driver
> * the OpenCL headers, if any, could be already installed by the
> Nvidia/AMD driver package or, hypothetically, provided by a vendor
> agnostic package (like the opencl-headers package already on SBo
> All these different requirements/scenario would mean, to me, that the
> beignet package should:
> * build with/without OpenCL headers
> * only suggest the use of the ocl-icd package, as the ICD loader could
> already be available on the system
> I would really appreciate if anyone could give me insights or thoughts
> about this case, especially if I missed something.
This shows what a mess OpenCL can be. I'm really glad we managed to make this
at least easier for people using -current :)
As a general hint, that's probably also a good place for you to check ;)
Where the headers come from shouldn't matter. They are vendor independent, so
might as well come from a central, generic package. Although the one we have
looks a bit dated.
The ICD loader in -current is ocl-icd. Most OpenCL drivers out there should
work fine with it. Using it as the default ICD loader for scripts on SBo seems
sound for those very reasons.
-------------- next part --------------
A non-text attachment was scrubbed...
Size: 213 bytes
Desc: This is a digitally signed message part.
More information about the SlackBuilds-users