summaryrefslogtreecommitdiffstats
path: root/dynamic-layers
diff options
context:
space:
mode:
authorNaveen Saini <naveen.kumar.saini@intel.com>2021-07-07 13:26:11 +0800
committerAnuj Mittal <anuj.mittal@intel.com>2021-07-08 00:29:52 +0800
commitfde5a8b3e107dbd7e9d588a3c7312e69dea65de3 (patch)
tree258348fc8eb317fa9ff04b021e12a5095aca62da /dynamic-layers
parent11971461e0ff2e6173ddcd783170666a1480e198 (diff)
downloadmeta-intel-fde5a8b3e107dbd7e9d588a3c7312e69dea65de3.tar.gz
openvkl: add recipe for Intel Open Volume Kernel Library
Intel(R) Open Volume Kernel Library (Intel(R) Open VKL) is a collection of high-performance volume computation kernels, developed at Intel. The target users of Open VKL are graphics application engineers who want to improve the performance of their volume rendering applications by leveraging Open VKL’s performance-optimized kernels, which include volume traversal and sampling functionality for a variety of volumetric data formats. The kernels are optimized for the latest Intel(R) processors with support for SSE, AVX, AVX2, and AVX-512 instructions. Open VKL provides a C API, and also supports applications written with the Intel(R) Implicit SPMD Program Compiler (Intel(R) ISPC) by also providing an ISPC interface to the core volume algorithms. This makes it possible to write a renderer in ISPC that automatically vectorizes and leverages SSE, AVX, AVX2, and AVX-512 instructions. ISPC also supports runtime code selection, thus ISPC will select the best code path for your application. https://www.openvkl.org/ Signed-off-by: Naveen Saini <naveen.kumar.saini@intel.com> Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
Diffstat (limited to 'dynamic-layers')
-rw-r--r--dynamic-layers/openembedded-layer/recipes-oneapi/openvkl/openvkl/0001-half.hpp-Fixed-missing-include-for-F16C-intrinsics.patch44
-rw-r--r--dynamic-layers/openembedded-layer/recipes-oneapi/openvkl/openvkl_0.13.0.bb36
2 files changed, 80 insertions, 0 deletions
diff --git a/dynamic-layers/openembedded-layer/recipes-oneapi/openvkl/openvkl/0001-half.hpp-Fixed-missing-include-for-F16C-intrinsics.patch b/dynamic-layers/openembedded-layer/recipes-oneapi/openvkl/openvkl/0001-half.hpp-Fixed-missing-include-for-F16C-intrinsics.patch
new file mode 100644
index 00000000..4c8caaf2
--- /dev/null
+++ b/dynamic-layers/openembedded-layer/recipes-oneapi/openvkl/openvkl/0001-half.hpp-Fixed-missing-include-for-F16C-intrinsics.patch
@@ -0,0 +1,44 @@
1From 8b701e2b6989f7e071126989dd9453d7728d9a61 Mon Sep 17 00:00:00 2001
2From: Naveen Saini <naveen.kumar.saini@intel.com>
3Date: Wed, 7 Jul 2021 11:40:15 +0800
4Subject: [PATCH] half.hpp: Fixed missing include for F16C intrinsics
5
6Upstream-Status: Backport [https://sourceforge.net/p/half/code/415/]
7
8Ref:
9https://github.com/openvkl/openvkl/issues/12
10
11Signed-off-by: Naveen Saini <naveen.kumar.saini@intel.com>
12---
13 testing/external/half.hpp | 8 ++++----
14 1 file changed, 4 insertions(+), 4 deletions(-)
15
16diff --git a/testing/external/half.hpp b/testing/external/half.hpp
17index 69f2ffd..005043f 100644
18--- a/testing/external/half.hpp
19+++ b/testing/external/half.hpp
20@@ -266,10 +266,6 @@
21 #if HALF_ENABLE_CPP11_HASH
22 #include <functional>
23 #endif
24-#if HALF_ENABLE_F16C_INTRINSICS
25- #include <immintrin.h>
26-#endif
27-
28
29 #ifndef HALF_ENABLE_F16C_INTRINSICS
30 /// Enable F16C intruction set intrinsics.
31@@ -281,6 +277,10 @@
32 #define HALF_ENABLE_F16C_INTRINSICS __F16C__
33 #endif
34
35+#if HALF_ENABLE_F16C_INTRINSICS
36+ #include <immintrin.h>
37+#endif
38+
39 #ifdef HALF_DOXYGEN_ONLY
40 /// Type for internal floating-point computations.
41 /// This can be predefined to a built-in floating-point type (`float`, `double` or `long double`) to override the internal
42--
432.17.1
44
diff --git a/dynamic-layers/openembedded-layer/recipes-oneapi/openvkl/openvkl_0.13.0.bb b/dynamic-layers/openembedded-layer/recipes-oneapi/openvkl/openvkl_0.13.0.bb
new file mode 100644
index 00000000..82c4bbea
--- /dev/null
+++ b/dynamic-layers/openembedded-layer/recipes-oneapi/openvkl/openvkl_0.13.0.bb
@@ -0,0 +1,36 @@
1SUMMARY = "Intel(R) Open Volume Kernel Library"
2DESCRIPTION = "Intel(R) Open Volume Kernel Library (Intel(R) Open VKL) is a \
3collection of high-performance volume computation kernels. The target users \
4of Open VKL are graphics application engineers who want to improve the \
5performance of their volume rendering applications by leveraging Open VKL’s \
6performance-optimized kernels, which include volume traversal and sampling \
7functionality for a variety of volumetric data formats. The kernels are optimized \
8for the latest Intel(R) processors with support for SSE, AVX, AVX2, and AVX-512 \
9instructions."
10HOMEPAGE = "https://www.openvkl.org/"
11
12LICENSE = "Apache-2.0 & BSD-3-Clause & MIT & Zlib"
13LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=3b83ef96387f14655fc854ddc3c6bd57 \
14 file://third-party-programs.txt;md5=90d62b467dd4fdf3c7d3d897fbac7437 \
15 file://testing/external/half.hpp;beginline=1;endline=17;md5=cc1d65765aef5c4f6a37e7833173835a"
16
17inherit pkgconfig cmake
18
19S = "${WORKDIR}/git"
20
21SRC_URI = "git://github.com/openvkl/openvkl.git;protocol=https \
22 file://0001-half.hpp-Fixed-missing-include-for-F16C-intrinsics.patch \
23 "
24SRCREV = "84b9d78ead12f369f37cee77d985da9d13c07ae1"
25
26COMPATIBLE_HOST = '(x86_64).*-linux'
27
28DEPENDS = "ispc-native rkcommon embree"
29
30EXTRA_OECMAKE += " \
31 -DISPC_EXECUTABLE=${STAGING_BINDIR_NATIVE}/ispc \
32 "
33PACKAGES =+ "${PN}-examples"
34FILES_${PN}-examples = "\
35 ${bindir} \
36 "