summaryrefslogtreecommitdiffstats
path: root/dynamic-layers
diff options
context:
space:
mode:
authorAnuj Mittal <anuj.mittal@intel.com>2020-04-20 15:27:26 +0800
committerAnuj Mittal <anuj.mittal@intel.com>2020-04-21 22:07:00 +0800
commit53c87950e8bb913fab021213469ab8ea1d58c2f1 (patch)
tree8ab4b96e0ea058a84c7e3c80df04c468447913ed /dynamic-layers
parent28c9337302f0a4525c6696549c7ea7800d6c63a1 (diff)
downloadmeta-intel-53c87950e8bb913fab021213469ab8ea1d58c2f1.tar.gz
mkl-dnn: upgrade 1.2.2 -> 1.4
The name of project has changed to oneDNN. Enable GPU engine to be built by default which would need clang layer to be included. Also include two minor fixes to install logic that have been submitted for review upstream. Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
Diffstat (limited to 'dynamic-layers')
-rw-r--r--dynamic-layers/clang-layer/recipes-core/dnn/files/0001-src-CMakeLists.txt-fix-FindOpenCL.cmake-source-path.patch34
-rw-r--r--dynamic-layers/clang-layer/recipes-core/dnn/files/0002-src-CMakeLists.txt-use-value-of-DESTDIR.patch33
-rwxr-xr-xdynamic-layers/clang-layer/recipes-core/dnn/files/run-ptest15
-rw-r--r--dynamic-layers/clang-layer/recipes-core/dnn/onednn_1.4.bb57
4 files changed, 139 insertions, 0 deletions
diff --git a/dynamic-layers/clang-layer/recipes-core/dnn/files/0001-src-CMakeLists.txt-fix-FindOpenCL.cmake-source-path.patch b/dynamic-layers/clang-layer/recipes-core/dnn/files/0001-src-CMakeLists.txt-fix-FindOpenCL.cmake-source-path.patch
new file mode 100644
index 00000000..aee0934a
--- /dev/null
+++ b/dynamic-layers/clang-layer/recipes-core/dnn/files/0001-src-CMakeLists.txt-fix-FindOpenCL.cmake-source-path.patch
@@ -0,0 +1,34 @@
1From 89ebbee73ff0af48eaaec63335b749a176a317bb Mon Sep 17 00:00:00 2001
2From: Anuj Mittal <anuj.mittal@intel.com>
3Date: Tue, 21 Apr 2020 09:18:09 +0800
4Subject: [PATCH 1/2] src/CMakeLists.txt: fix FindOpenCL.cmake source path
5
6The existing logic doesn't work when DESTDIR is being passed to cmake.
7The file is installed in DESTDIR/CMAKE_INSTALL_PREFIX/libdir while we're
8trying to copy it from CMAKE_INSTALL_PREFIX/libdir.
9
10Use the file from source tree instead.
11
12Upstream-Status: Submitted
13
14Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
15---
16 src/CMakeLists.txt | 2 +-
17 1 file changed, 1 insertion(+), 1 deletion(-)
18
19diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
20index 88e318923..0c99fefae 100644
21--- a/src/CMakeLists.txt
22+++ b/src/CMakeLists.txt
23@@ -203,7 +203,7 @@ if(DNNL_GPU_RUNTIME STREQUAL "OCL")
24 install(FILES
25 "../cmake/FindOpenCL.cmake"
26 DESTINATION ${LIB_CONFIG_INSTALL_DIR})
27- install(FILES "${CMAKE_INSTALL_PREFIX}/${LIB_CONFIG_INSTALL_DIR}/FindOpenCL.cmake"
28+ install(FILES "../cmake/FindOpenCL.cmake"
29 DESTINATION ${LIB_CONFIG_INSTALL_DIR_COMPAT})
30 endif()
31
32--
332.25.3
34
diff --git a/dynamic-layers/clang-layer/recipes-core/dnn/files/0002-src-CMakeLists.txt-use-value-of-DESTDIR.patch b/dynamic-layers/clang-layer/recipes-core/dnn/files/0002-src-CMakeLists.txt-use-value-of-DESTDIR.patch
new file mode 100644
index 00000000..02c0f81e
--- /dev/null
+++ b/dynamic-layers/clang-layer/recipes-core/dnn/files/0002-src-CMakeLists.txt-use-value-of-DESTDIR.patch
@@ -0,0 +1,33 @@
1From 3693305c9497f940b011e3e8b9d707d4f8075234 Mon Sep 17 00:00:00 2001
2From: Anuj Mittal <anuj.mittal@intel.com>
3Date: Tue, 21 Apr 2020 09:19:38 +0800
4Subject: [PATCH 2/2] src/CMakeLists.txt: use value of DESTDIR
5
6Make sure that we're using the value of DESTDIR for the paths that are
7being created to look into paths of installed files. Ensure that
8cmake_install.cmake actually has $ENV{DESTDIR} which gets expanded if
9it's being passed to cmake.
10
11Upstream-Status: Submitted
12
13Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
14---
15 src/CMakeLists.txt | 2 +-
16 1 file changed, 1 insertion(+), 1 deletion(-)
17
18diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
19index 0c99fefae..2f1499d0d 100644
20--- a/src/CMakeLists.txt
21+++ b/src/CMakeLists.txt
22@@ -137,7 +137,7 @@ install(EXPORT ${LIB_EXPORT_NAME}
23
24 # Intel MKL-DNN compat cmake files
25 install(CODE "execute_process(COMMAND ${CMAKE_COMMAND}
26- -DDIR=${CMAKE_INSTALL_PREFIX}/${CMAKE_INSTALL_LIBDIR}/cmake
27+ -DDIR=\$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/${CMAKE_INSTALL_LIBDIR}/cmake
28 -P ${PROJECT_SOURCE_DIR}/cmake/gen_mkldnn_compat_cmakes.cmake)")
29
30 # Intel MKL-DNN compat libraries
31--
322.25.3
33
diff --git a/dynamic-layers/clang-layer/recipes-core/dnn/files/run-ptest b/dynamic-layers/clang-layer/recipes-core/dnn/files/run-ptest
new file mode 100755
index 00000000..82d4df58
--- /dev/null
+++ b/dynamic-layers/clang-layer/recipes-core/dnn/files/run-ptest
@@ -0,0 +1,15 @@
1#!/bin/sh
2
3cd tests
4./api-c
5if [ $? -eq 0 ]; then
6 echo 'PASS: api-c'
7else
8 echo 'FAIL: api-c'
9fi
10./test_c_symbols-c
11if [ $? -eq 0 ]; then
12 echo 'PASS: test_c_symbols-c'
13else
14 echo 'FAIL: test_c_symbols-c'
15fi
diff --git a/dynamic-layers/clang-layer/recipes-core/dnn/onednn_1.4.bb b/dynamic-layers/clang-layer/recipes-core/dnn/onednn_1.4.bb
new file mode 100644
index 00000000..8ad98c90
--- /dev/null
+++ b/dynamic-layers/clang-layer/recipes-core/dnn/onednn_1.4.bb
@@ -0,0 +1,57 @@
1HOMEPAGE = "https://www.oneapi.com"
2SUMMARY = "Deep Neural Network Library"
3DESCRIPTION = "This software is a user mode library that accelerates\
4deep-learning applications and frameworks on Intel architecture."
5LICENSE = "Apache-2.0 & BSD-3-Clause & BSL-1.0"
6LIC_FILES_CHKSUM = "file://LICENSE;md5=3c6ff4426dbd618bcfd552ac4a7c1c56 \
7 file://tests/gtests/gtest/LICENSE;md5=cbbd27594afd089daa160d3a16dd515a \
8 file://src/cpu/xbyak/COPYRIGHT;md5=3b9bf048d063d54cdb28964db558bcc7 \
9 file://src/cpu/jit_utils/jitprofiling/LICENSE.BSD;md5=e671ff178b24a95a382ba670503c66fb \
10 file://doc/assets/mathjax/MathJax.js;endline=17;md5=25a014ad78c3d72a0e15d15f1d007c20 \
11 file://src/common/primitive_hashing.hpp;beginline=52;endline=55;md5=f56de33cb6ec02de60006b10e027b300 \
12 "
13SECTION = "lib"
14
15inherit pkgconfig cmake ptest
16
17S = "${WORKDIR}/git"
18SRCREV = "f7c41dc7b5471ad8bf7905e459bbed27f9094caa"
19SRC_URI = "git://github.com/oneapi-src/oneDNN.git;branch=rls-v1.4 \
20 file://0001-src-CMakeLists.txt-fix-FindOpenCL.cmake-source-path.patch \
21 file://0002-src-CMakeLists.txt-use-value-of-DESTDIR.patch \
22 file://run-ptest \
23 "
24
25UPSTREAM_CHECK_GITTAGREGEX = "^v(?P<pver>(\d+(\.\d+)+))$"
26
27CVE_PRODUCT = "intel:math_kernel_library"
28
29COMPATIBLE_HOST = '(x86_64).*-linux'
30COMPATIBLE_HOST_libc-musl = 'null'
31
32EXTRA_OECMAKE += " \
33 -DDNNL_LIBRARY_TYPE=SHARED \
34 -DDNNL_BUILD_EXAMPLES=ON \
35 -DDNNL_BUILD_TESTS=ON \
36 -DDNNL_CPU_RUNTIME=OMP \
37 -DDNNL_ARCH_OPT_FLAGS="" \
38 "
39
40PACKAGECONFIG ??= ""
41PACKAGECONFIG[gpu] = "-DDNNL_GPU_RUNTIME=OCL, , opencl-icd-loader, intel-compute-runtime"
42
43do_install_append () {
44 install -d ${D}${bindir}/mkl-dnn/tests/benchdnn/inputs
45 install -m 0755 ${B}/tests/benchdnn/benchdnn ${D}${bindir}/mkl-dnn/tests/benchdnn
46 cp -r ${B}/tests/benchdnn/inputs/* ${D}${bindir}/mkl-dnn/tests/benchdnn/inputs
47}
48
49do_install_ptest () {
50 install -d ${D}${PTEST_PATH}/tests
51 install -m 0755 ${B}/tests/api-c ${D}${PTEST_PATH}/tests
52 install -m 0755 ${B}/tests/test_c_symbols-c ${D}${PTEST_PATH}/tests
53}
54
55PACKAGES =+ "${PN}-test"
56
57FILES_${PN}-test = "${bindir}/mkl-dnn/*"