[Beignet] Building beignet with OpenCL 2.0 support in distros
Bruno Pagani
bruno.n.pagani at gmail.com
Sat Jan 21 15:40:32 UTC 2017
Le 21/01/2017 à 16:20, Rebecca N. Palmer a écrit :
>> is there any downside in compiling with
>> OpenCL 2.0 support,
> Yes - on older (Ivybridge/Haswell - no emitUntypedReadA64Instruction)
> hardware, a 2.0-enabled beignet won't work, at all.
That’s what I’ve feared but after trying it here I haven’t encountered
more issues than with a non-2.0-enabled beignet. That being said, my
test case was quite simple and potentially buggy (try it in darktable
after disabling opencl blacklisting), so maybe that’s why I didn’t face
any issue.
> I see two possible approaches:
>
> -Build two beignet packages, with and without 2.0 enabled, and make
> the with-2.0 one only accept 2.0-capable hardware (cl_get_gt_device()
> in src/cl_device_id.c).
> They can be coinstallable if they use different BEIGNET_INSTALL_DIR
> and ICD_FILE_NAME (I suggest choosing names that make the non-2.0 one
> sort first, so software that doesn't need 2.0 doesn't get the
> performance penalty of supporting it), but should be separate packages
> because some OpenCL-using software errors out if any installed
> platform has 0 devices (CL_DEVICE_NOT_FOUND - e.g.
> http://sources.debian.net/src/asl/0.1.7-2/src/acl/aclHardware.cxx/?hl=69#L69
> ,
> http://sources.debian.net/src/woo/1.0%2Bdfsg1-1/core/Scene.cpp/?hl=219#L207
> )
What would be the point of installing both? Just so that softwares not
needing 2.0 don’t get hurt on performances?
> -As suggested above, move the "does this hardware support 2.0?" check
> to run time.
> I'm currently working on this: it looks doable, but is the riskier option.
This look more sane to me in the long term.
> I at least need to decide quickly, as Debian freezes this week.
But does that really applies to Debian?
> Two other issues I've found:
> -CMake/FindLLVM.cmake doesn't find LLVM 3.9, even though this version
> is _required_ for OpenCL 2.0.
Because AFAIU, there is no llvm 3.9 in Debian Stretch:
https://packages.debian.org/stretch/llvm (and not even in Sid currently).
Regards,
Bruno
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 520 bytes
Desc: OpenPGP digital signature
URL: <https://lists.freedesktop.org/archives/beignet/attachments/20170121/27f29126/attachment.sig>
More information about the Beignet
mailing list