Skip to content
This repository was archived by the owner on Aug 5, 2022. It is now read-only.

Conversation

@ipuustin
Copy link
Contributor

@ipuustin ipuustin commented Feb 15, 2017

Integrate beignet + other OpenCL components into refkit. This enables various components to be hw-accelerated. One component that can be used out-of-box with OpenCL is OpenCV.

@ipuustin ipuustin force-pushed the beignet branch 3 times, most recently from ae1e5a6 to ce428e5 Compare February 15, 2017 19:49
@@ -0,0 +1,9 @@
SUMMARY = "OpenCL for Ostro OS XT"
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

some leftovers here

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Fixed now...

url = https://github.com/IntelRealSense/meta-intel-realsense.git
[submodule "meta-clang"]
path = meta-clang
url = https://github.com/kraj/meta-clang.git
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

can you add this with -b krogoth

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I added branch = krogoth, I guess that's what you meant?

@ipuustin ipuustin force-pushed the beignet branch 2 times, most recently from 1cc5fc5 to cc949cd Compare February 16, 2017 15:15
##OEROOT##/../meta-iotqa \
##OEROOT##/../meta-security-isafw \
##OEROOT##/../meta-intel-realsense \
##OEROOT##/../meta-clang \
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

a learning from meta-intel-realsense addition: we need to update the LCONF_VERSION and LAYER_CONF_VERSION too

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hmm, do you mean that we need to bump up LCONF_VERSION to 2 in bblayers.conf.sample?

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yes and also LAYER_CONF_VERSION in layer.conf. This ensures that users update their build/conf/bblayers.conf before bitbake parses the recipes with these changes included. The recipe parsing fails with an error because this PR brings a bbappend but the corresponding bb is in meta-clang (which is unlikely enabled unless we force it with the conf version change).

@ipuustin ipuustin force-pushed the beignet branch 8 times, most recently from 30e6468 to 88be5f0 Compare February 21, 2017 11:04
@ipuustin
Copy link
Contributor Author

@skuusela : could you check that the test is done correctly, please?

@ipuustin ipuustin changed the title Beignet TEST BUILD, do not merge! Add beignet and other OpenCL components. Feb 21, 2017
@ipuustin ipuustin force-pushed the beignet branch 2 times, most recently from da0e2f2 to d2dda42 Compare February 21, 2017 12:48
@skuusela
Copy link
Contributor

skuusela commented Feb 21, 2017

@ipuustin The test seem to run fine:
test_opencl_viennacl_1 (oeqa.runtime.computervision.opencl_viennacl_1.OpenCLViennaCL1Test) ... OK (25.392s)

@ipuustin
Copy link
Contributor Author

@skuusela: Good!

@@ -0,0 +1,5 @@
FILESEXTRAPATHS_prepend := "${THISDIR}/files:"

SRC_URI_append = " \
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

is this opencv_%.bbappend intentionally separate from the other you're adding above?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Good catch! Consolidated the bbappends.

@mythi
Copy link
Contributor

mythi commented Feb 22, 2017

test this please

@ipuustin
Copy link
Contributor Author

Rebased.

@mythi
Copy link
Contributor

mythi commented Feb 22, 2017

@ipuustin this needs rebasing after #35

Add meta-clang (krogoth branch).

Signed-off-by: Ismo Puustinen <ismo.puustinen@intel.com>
Make the correct gcc toolchain available for clang. This is backported
from meta-clang master.

Signed-off-by: Ismo Puustinen <ismo.puustinen@intel.com>
Use the recipes-opencl from Ostro XT in unmodified form.

Signed-off-by: Ismo Puustinen <ismo.puustinen@intel.com>
Also update the native build cleanup patch.

Signed-off-by: Ismo Puustinen <ismo.puustinen@intel.com>
This is backwards, since the OpenCL ICD shouldn't depend on the ICD
loader. However, if beignet doesn't recognize ocl-icd, it doesn't export
the correct symbols required by ocl-icd.

Signed-off-by: Ismo Puustinen <ismo.puustinen@intel.com>
Some packages (opencv) depend on virtual/opencl-icd. Since ocl-icd
provides an icd, indicate that in PROVIDES.

Signed-off-by: Ismo Puustinen <ismo.puustinen@intel.com>
Updated version from 2.2.9 to 2.2.11.

Signed-off-by: Ismo Puustinen <ismo.puustinen@intel.com>
Add packagegroup-opencl to packagegroup-computervision and also to
supported recipes.

Signed-off-by: Ismo Puustinen <ismo.puustinen@intel.com>
Adjust opencv PACKAGECONFIG so that OpenCL support gets enabled.

Signed-off-by: Ismo Puustinen <ismo.puustinen@intel.com>
Do not depend on opencl-headers (which is a name of a recipe), but
rather on virtual/opencl-headers, which are supplied by several
providers.

Signed-off-by: Ismo Puustinen <ismo.puustinen@intel.com>
ViennaCL is OpenCL-accelerated linear algebra library. The sample files
and benchmarks can be used for testing OpenCL functionality and
performance. Add viennacl-examples to packagegroup-computervision-test.

Signed-off-by: Ismo Puustinen <ismo.puustinen@intel.com>
Beignet needs to know compile-time which PCI ID contains the OpenCL
device. This PCI id is different on different HW targets. Build an
OpenCL ICD for each HW target.

Only mark platform available if the driver matches the target hardware.
This enables us to have multiple beignet backends, of which only the
correct one gets loaded.

Signed-off-by: Ismo Puustinen <ismo.puustinen@intel.com>
Run a ViennaCL OpenCL benchmark. This should test beignet, kernel
driver, ocl-icd, and ViennaCL.

Signed-off-by: Ismo Puustinen <ismo.puustinen@intel.com>
The default behavior is to load the OpenCL library dynamically. OpenCV
attempts to use /usr/lib/libOpenCL.so, which is a symlink provided only
by ocl-icd-dev package. By really linking against the OpenCL library,
OpenCL works without manually having to add the symlink or installing
the ocl-icd-dev package.

Signed-off-by: Ismo Puustinen <ismo.puustinen@intel.com>
@ipuustin
Copy link
Contributor Author

Rebased again.

@mythi mythi merged commit eaaab9a into intel:master Feb 22, 2017
pohly pushed a commit to pohly/intel-iot-refkit that referenced this pull request Apr 26, 2017
packagegroup-nodejs-runtime.bb: remove soletta Node.js bindings
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants