Beignet Now Implements Enough OpenCL 2.0 To Support It For Skylake+
Written by Michael Larabel in Intel on 30 December 2016 at 08:00 AM EST. 1 Comment
Intel's open-source Beignet OpenCL project for implementing CL/GPGPU support for Intel graphics hardware is on the edge of a big milestone.

We've been seeing more OpenCL 2.0 code land in Beignet while over night there was yet more code to land: for OpenCL 2.0 there was device enqueue work, cl_kernel pointer to GPGPU, and other work.

One of the final commits though is what excited us this morning: add an option to enable OpenCL 2.0. With the latest Git code, Intel users can now officially expose OpenCL 2.0 support rather than just OpenCL 1.2.

The OpenCL 2.0 support isn't enabled by default currently but -DENABLE_OPENCL_20 must be set for the CMake build system. Additionally, the OpenCL 2.0 support is just for Intel Skylake "Gen 9" graphics and newer. As well, Beignet must be built against LLVM 3.9+ and libdrm 2.4.66+ for meeting the requirements for being able to expose OpenCL 2.0 for Intel GPUs on Linux.

Great milestone to end the year for this open-source OpenCL project, I'll be trying to run some fresh Beignet OpenCL benchmarks shortly. Meanwhile the Clover Gallium3D-based OpenCL implementation is basically abandoned at OpenCL 1.1, AMD is still working on open-sourcing their newer ROCm code, the AMD binary driver currently advertises OpenCL 1.2 as does the NVIDIA proprietary Linux driver. Hopefully there will be a more fruitful open-source OpenCL ecosystem in 2017.
Related News
About The Author
Author picture

Michael Larabel is the principal author of and founded the site in 2004 with a focus on enriching the Linux hardware experience. Michael has written more than 20,000 articles covering the state of Linux hardware support, Linux performance, graphics drivers, and other topics. Michael is also the lead developer of the Phoronix Test Suite, Phoromatic, and automated benchmarking software. He can be followed via Twitter or contacted via

Popular News This Week