summaryrefslogtreecommitdiffstats
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
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>
-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-ptest (renamed from recipes-core/mkl-dnn/files/run-ptest)0
-rw-r--r--dynamic-layers/clang-layer/recipes-core/dnn/onednn_1.4.bb (renamed from recipes-core/mkl-dnn/mkl-dnn_1.2.2.bb)32
4 files changed, 85 insertions, 14 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/recipes-core/mkl-dnn/files/run-ptest b/dynamic-layers/clang-layer/recipes-core/dnn/files/run-ptest
index 82d4df58..82d4df58 100755
--- a/recipes-core/mkl-dnn/files/run-ptest
+++ b/dynamic-layers/clang-layer/recipes-core/dnn/files/run-ptest
diff --git a/recipes-core/mkl-dnn/mkl-dnn_1.2.2.bb b/dynamic-layers/clang-layer/recipes-core/dnn/onednn_1.4.bb
index 1231fdf0..8ad98c90 100644
--- a/recipes-core/mkl-dnn/mkl-dnn_1.2.2.bb
+++ b/dynamic-layers/clang-layer/recipes-core/dnn/onednn_1.4.bb
@@ -1,20 +1,24 @@
1HOMEPAGE = "https://www.oneapi.com"
1SUMMARY = "Deep Neural Network Library" 2SUMMARY = "Deep Neural Network Library"
2DESCRIPTION = "This software is a user mode library that accelerates\ 3DESCRIPTION = "This software is a user mode library that accelerates\
3deep-learning applications and frameworks on Intel architecture." 4deep-learning applications and frameworks on Intel architecture."
4LICENSE = "Apache-2.0 & BSD-3-Clause & BSL-1.0" 5LICENSE = "Apache-2.0 & BSD-3-Clause & BSL-1.0"
5LIC_FILES_CHKSUM = "file://LICENSE;md5=0c328b62744f16fbb96f4335c5b65325 \ 6LIC_FILES_CHKSUM = "file://LICENSE;md5=3c6ff4426dbd618bcfd552ac4a7c1c56 \
6 file://tests/gtests/gtest/LICENSE;md5=cbbd27594afd089daa160d3a16dd515a \ 7 file://tests/gtests/gtest/LICENSE;md5=cbbd27594afd089daa160d3a16dd515a \
7 file://src/cpu/xbyak/COPYRIGHT;md5=3b9bf048d063d54cdb28964db558bcc7 \ 8 file://src/cpu/xbyak/COPYRIGHT;md5=3b9bf048d063d54cdb28964db558bcc7 \
8 file://src/cpu/jit_utils/jitprofiling/LICENSE.BSD;md5=e671ff178b24a95a382ba670503c66fb \ 9 file://src/cpu/jit_utils/jitprofiling/LICENSE.BSD;md5=e671ff178b24a95a382ba670503c66fb \
9 file://doc/assets/mathjax/LICENSE;md5=3b83ef96387f14655fc854ddc3c6bd57 \ 10 file://doc/assets/mathjax/MathJax.js;endline=17;md5=25a014ad78c3d72a0e15d15f1d007c20 \
11 file://src/common/primitive_hashing.hpp;beginline=52;endline=55;md5=f56de33cb6ec02de60006b10e027b300 \
10 " 12 "
11SECTION = "lib" 13SECTION = "lib"
12 14
13inherit pkgconfig cmake ptest 15inherit pkgconfig cmake ptest
14 16
15S = "${WORKDIR}/git" 17S = "${WORKDIR}/git"
16SRCREV = "8e96ef49488c65e0738c552cec5c0563ab92c1af" 18SRCREV = "f7c41dc7b5471ad8bf7905e459bbed27f9094caa"
17SRC_URI = "git://github.com/intel/mkl-dnn.git;branch=rls-v1.2 \ 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 \
18 file://run-ptest \ 22 file://run-ptest \
19 " 23 "
20 24
@@ -25,23 +29,23 @@ CVE_PRODUCT = "intel:math_kernel_library"
25COMPATIBLE_HOST = '(x86_64).*-linux' 29COMPATIBLE_HOST = '(x86_64).*-linux'
26COMPATIBLE_HOST_libc-musl = 'null' 30COMPATIBLE_HOST_libc-musl = 'null'
27 31
28EXTRA_OECMAKE += "-DDNNL_LIBRARY_TYPE=SHARED" 32EXTRA_OECMAKE += " \
29EXTRA_OECMAKE += "-DDNNL_THREADING=OMP" 33 -DDNNL_LIBRARY_TYPE=SHARED \
30EXTRA_OECMAKE += "-DWITH_EXAMPLE=ON" 34 -DDNNL_BUILD_EXAMPLES=ON \
31EXTRA_OECMAKE += "-DWITH_TEST=ON" 35 -DDNNL_BUILD_TESTS=ON \
32EXTRA_OECMAKE += "-DARCH_OPT_FLAGS=''" 36 -DDNNL_CPU_RUNTIME=OMP \
33EXTRA_OECMAKE += "-DCMAKE_SKIP_RPATH=ON" 37 -DDNNL_ARCH_OPT_FLAGS="" \
38 "
39
40PACKAGECONFIG ??= ""
41PACKAGECONFIG[gpu] = "-DDNNL_GPU_RUNTIME=OCL, , opencl-icd-loader, intel-compute-runtime"
34 42
35do_install_append () { 43do_install_append () {
36 install -d ${D}${bindir}/mkl-dnn
37 install -d ${D}${bindir}/mkl-dnn/tests
38 install -d ${D}${bindir}/mkl-dnn/tests/benchdnn
39 install -d ${D}${bindir}/mkl-dnn/tests/benchdnn/inputs 44 install -d ${D}${bindir}/mkl-dnn/tests/benchdnn/inputs
40 install -m 0755 ${B}/tests/benchdnn/benchdnn ${D}${bindir}/mkl-dnn/tests/benchdnn 45 install -m 0755 ${B}/tests/benchdnn/benchdnn ${D}${bindir}/mkl-dnn/tests/benchdnn
41 cp -r ${B}/tests/benchdnn/inputs/* ${D}${bindir}/mkl-dnn/tests/benchdnn/inputs 46 cp -r ${B}/tests/benchdnn/inputs/* ${D}${bindir}/mkl-dnn/tests/benchdnn/inputs
42} 47}
43 48
44
45do_install_ptest () { 49do_install_ptest () {
46 install -d ${D}${PTEST_PATH}/tests 50 install -d ${D}${PTEST_PATH}/tests
47 install -m 0755 ${B}/tests/api-c ${D}${PTEST_PATH}/tests 51 install -m 0755 ${B}/tests/api-c ${D}${PTEST_PATH}/tests