You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@mxnet.apache.org by la...@apache.org on 2020/12/24 14:28:49 UTC

[incubator-mxnet] branch master updated: Fix build problems with oneDNN v2.0 (#19706)

This is an automated email from the ASF dual-hosted git repository.

lausen pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/incubator-mxnet.git


The following commit(s) were added to refs/heads/master by this push:
     new 8e849e4  Fix build problems with oneDNN v2.0 (#19706)
8e849e4 is described below

commit 8e849e44abf33b5ee19c6631e8f62593cbd669ee
Author: bartekkuncer <ba...@intel.com>
AuthorDate: Thu Dec 24 15:27:07 2020 +0100

    Fix build problems with oneDNN v2.0 (#19706)
---
 .gitignore                                           | 4 ++--
 CMakeLists.txt                                       | 4 ++--
 cd/python/pypi/pypi_package.sh                       | 6 +++---
 ci/docker/runtime_functions.sh                       | 8 ++++----
 ci/jenkins/Jenkins_steps.groovy                      | 2 +-
 include/mkldnn/dnnl_config.h                         | 1 +
 include/mkldnn/dnnl_debug.h                          | 1 +
 include/mkldnn/dnnl_ocl.h                            | 1 +
 include/mkldnn/dnnl_ocl.hpp                          | 1 +
 include/mkldnn/dnnl_sycl.h                           | 1 +
 include/mkldnn/dnnl_sycl.hpp                         | 1 +
 include/mkldnn/dnnl_sycl_types.h                     | 1 +
 include/mkldnn/dnnl_threadpool.h                     | 1 +
 include/mkldnn/dnnl_threadpool.hpp                   | 1 +
 include/mkldnn/dnnl_threadpool_iface.hpp             | 1 +
 include/mkldnn/dnnl_version.h                        | 1 +
 include/mkldnn/mkldnn_config.h                       | 1 +
 include/mkldnn/mkldnn_debug.h                        | 1 +
 include/mkldnn/oneapi/dnnl/dnnl.h                    | 1 +
 include/mkldnn/oneapi/dnnl/dnnl.hpp                  | 1 +
 include/mkldnn/oneapi/dnnl/dnnl_debug.h              | 1 +
 include/mkldnn/oneapi/dnnl/dnnl_ocl.h                | 1 +
 include/mkldnn/oneapi/dnnl/dnnl_ocl.hpp              | 1 +
 include/mkldnn/oneapi/dnnl/dnnl_sycl.h               | 1 +
 include/mkldnn/oneapi/dnnl/dnnl_sycl.hpp             | 1 +
 include/mkldnn/oneapi/dnnl/dnnl_sycl_types.h         | 1 +
 include/mkldnn/oneapi/dnnl/dnnl_threadpool.h         | 1 +
 include/mkldnn/oneapi/dnnl/dnnl_threadpool.hpp       | 1 +
 include/mkldnn/oneapi/dnnl/dnnl_threadpool_iface.hpp | 1 +
 include/mkldnn/oneapi/dnnl/dnnl_types.h              | 1 +
 tools/pip/setup.py                                   | 2 +-
 31 files changed, 38 insertions(+), 13 deletions(-)

diff --git a/.gitignore b/.gitignore
index 9fc6a2b..648d59c 100644
--- a/.gitignore
+++ b/.gitignore
@@ -171,5 +171,5 @@ coverage.xml
 cmake_options.yml
 
 # header file generated at compile time
-include/mkldnn/dnnl_version.h
-include/mkldnn/dnnl_config.h
+include/mkldnn/oneapi/dnnl/dnnl_version.h
+include/mkldnn/oneapi/dnnl/dnnl_config.h
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 661015b..02491e6 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -856,9 +856,9 @@ endif()
 if(USE_MKLDNN)
     add_custom_command(TARGET mxnet POST_BUILD
       COMMAND ${CMAKE_COMMAND} -E copy
-      ${CMAKE_BINARY_DIR}/3rdparty/mkldnn/include/oneapi/dnnl/dnnl_config.h  ${CMAKE_SOURCE_DIR}/include/mkldnn/
+      ${CMAKE_BINARY_DIR}/3rdparty/mkldnn/include/oneapi/dnnl/dnnl_config.h  ${CMAKE_SOURCE_DIR}/include/mkldnn/oneapi/dnnl/
       COMMAND ${CMAKE_COMMAND} -E copy
-      ${CMAKE_BINARY_DIR}/3rdparty/mkldnn/include/oneapi/dnnl/dnnl_version.h  ${CMAKE_SOURCE_DIR}/include/mkldnn/)
+      ${CMAKE_BINARY_DIR}/3rdparty/mkldnn/include/oneapi/dnnl/dnnl_version.h  ${CMAKE_SOURCE_DIR}/include/mkldnn/oneapi/dnnl/)
 endif()
 
 if(USE_INTGEMM)
diff --git a/cd/python/pypi/pypi_package.sh b/cd/python/pypi/pypi_package.sh
index 98bec25..3f9908a 100755
--- a/cd/python/pypi/pypi_package.sh
+++ b/cd/python/pypi/pypi_package.sh
@@ -28,9 +28,9 @@ export mxnet_variant=${1:?"Please specify the mxnet variant"}
 # and CD unpacks it to a directory called cd_misc
 # Nov. 2019 Update: With v1.1, MKL-DNN is renaming to DNNL. Hence changing the prefix of file name.
 if [ -f "cd_misc/dnnl_version.h" ]; then
-  mkdir -p 3rdparty/mkldnn/include
-  cp cd_misc/dnnl_version.h 3rdparty/mkldnn/include/.
-  cp cd_misc/dnnl_config.h 3rdparty/mkldnn/include/.
+  mkdir -p 3rdparty/mkldnn/include/oneapi/dnnl
+  cp cd_misc/dnnl_version.h 3rdparty/mkldnn/include/oneapi/dnnl/.
+  cp cd_misc/dnnl_config.h 3rdparty/mkldnn/include/oneapi/dnnl/.
 fi
 
 # Create wheel workspace
diff --git a/ci/docker/runtime_functions.sh b/ci/docker/runtime_functions.sh
index d913325..53f7c4c 100755
--- a/ci/docker/runtime_functions.sh
+++ b/ci/docker/runtime_functions.sh
@@ -1267,10 +1267,10 @@ build_static_libmxnet() {
 # Tests CD PyPI packaging in CI
 ci_package_pypi() {
     set -ex
-    # copies mkldnn header files to 3rdparty/mkldnn/include/ as in CD
-    mkdir -p 3rdparty/mkldnn/include
-    cp include/mkldnn/dnnl_version.h 3rdparty/mkldnn/include/.
-    cp include/mkldnn/dnnl_config.h 3rdparty/mkldnn/include/.
+    # copies mkldnn header files to 3rdparty/mkldnn/include/oneapi/dnnl/ as in CD
+    mkdir -p 3rdparty/mkldnn/include/oneapi/dnnl
+    cp include/mkldnn/oneapi/dnnl/dnnl_version.h 3rdparty/mkldnn/include/oneapi/dnnl/.
+    cp include/mkldnn/oneapi/dnnl/dnnl_config.h 3rdparty/mkldnn/include/oneapi/dnnl/.
     local mxnet_variant=${1:?"This function requires a python command as the first argument"}
     cd_package_pypi ${mxnet_variant}
     cd_integration_test_pypi
diff --git a/ci/jenkins/Jenkins_steps.groovy b/ci/jenkins/Jenkins_steps.groovy
index 1413756..37345b8 100644
--- a/ci/jenkins/Jenkins_steps.groovy
+++ b/ci/jenkins/Jenkins_steps.groovy
@@ -37,7 +37,7 @@ mx_tensorrt_lib = 'build/libmxnet.so, build/3rdparty/tvm/libtvm_runtime.so, buil
 mx_lib_cpp_examples = 'build/libmxnet.so, build/3rdparty/tvm/libtvm_runtime.so, build/libtvmop.so, build/tvmop.conf, build/3rdparty/openmp/runtime/src/libomp.so, build/libcustomop_lib.so, build/libcustomop_gpu_lib.so, build/libsubgraph_lib.so, example/extensions/lib_external_ops/build/libexternal_lib.so, python/mxnet/_cy3/*.so, python/mxnet/_ffi/_cy3/*.so'
 mx_lib_cpp_examples_no_tvm_op = 'build/libmxnet.so, build/libcustomop_lib.so, build/libcustomop_gpu_lib.so, build/libsubgraph_lib.so, build/3rdparty/openmp/runtime/src/libomp.so, python/mxnet/_cy3/*.so, python/mxnet/_ffi/_cy3/*.so'
 mx_lib_cpp_examples_cpu = 'build/libmxnet.so, build/3rdparty/tvm/libtvm_runtime.so, build/libtvmop.so, build/tvmop.conf, build/3rdparty/openmp/runtime/src/libomp.so'
-mx_cd_lib = 'lib/libmxnet.so, licenses/*, lib/libgfortran.so.*, lib/libopenblas.so.0, include/mkldnn/dnnl_version.h, include/mkldnn/dnnl_config.h'
+mx_cd_lib = 'lib/libmxnet.so, licenses/*, lib/libgfortran.so.*, lib/libopenblas.so.0, include/mkldnn/oneapi/dnnl/dnnl_version.h, include/mkldnn/oneapi/dnnl/dnnl_config.h'
 
 
 // Python unittest for CPU
diff --git a/include/mkldnn/dnnl_config.h b/include/mkldnn/dnnl_config.h
new file mode 120000
index 0000000..ff3719d
--- /dev/null
+++ b/include/mkldnn/dnnl_config.h
@@ -0,0 +1 @@
+../../3rdparty/mkldnn/include/dnnl_config.h
\ No newline at end of file
diff --git a/include/mkldnn/dnnl_debug.h b/include/mkldnn/dnnl_debug.h
new file mode 120000
index 0000000..db549ed
--- /dev/null
+++ b/include/mkldnn/dnnl_debug.h
@@ -0,0 +1 @@
+../../3rdparty/mkldnn/include/dnnl_debug.h
\ No newline at end of file
diff --git a/include/mkldnn/dnnl_ocl.h b/include/mkldnn/dnnl_ocl.h
new file mode 120000
index 0000000..ecc7f34
--- /dev/null
+++ b/include/mkldnn/dnnl_ocl.h
@@ -0,0 +1 @@
+../../3rdparty/mkldnn/include/dnnl_ocl.h
\ No newline at end of file
diff --git a/include/mkldnn/dnnl_ocl.hpp b/include/mkldnn/dnnl_ocl.hpp
new file mode 120000
index 0000000..3f4fec4
--- /dev/null
+++ b/include/mkldnn/dnnl_ocl.hpp
@@ -0,0 +1 @@
+../../3rdparty/mkldnn/include/dnnl_ocl.hpp
\ No newline at end of file
diff --git a/include/mkldnn/dnnl_sycl.h b/include/mkldnn/dnnl_sycl.h
new file mode 120000
index 0000000..4c1bfe5
--- /dev/null
+++ b/include/mkldnn/dnnl_sycl.h
@@ -0,0 +1 @@
+../../3rdparty/mkldnn/include/dnnl_sycl.h
\ No newline at end of file
diff --git a/include/mkldnn/dnnl_sycl.hpp b/include/mkldnn/dnnl_sycl.hpp
new file mode 120000
index 0000000..8837231
--- /dev/null
+++ b/include/mkldnn/dnnl_sycl.hpp
@@ -0,0 +1 @@
+../../3rdparty/mkldnn/include/dnnl_sycl.hpp
\ No newline at end of file
diff --git a/include/mkldnn/dnnl_sycl_types.h b/include/mkldnn/dnnl_sycl_types.h
new file mode 120000
index 0000000..94461bc
--- /dev/null
+++ b/include/mkldnn/dnnl_sycl_types.h
@@ -0,0 +1 @@
+../../3rdparty/mkldnn/include/dnnl_sycl_types.h
\ No newline at end of file
diff --git a/include/mkldnn/dnnl_threadpool.h b/include/mkldnn/dnnl_threadpool.h
new file mode 120000
index 0000000..5ed7f64
--- /dev/null
+++ b/include/mkldnn/dnnl_threadpool.h
@@ -0,0 +1 @@
+../../3rdparty/mkldnn/include/dnnl_threadpool.h
\ No newline at end of file
diff --git a/include/mkldnn/dnnl_threadpool.hpp b/include/mkldnn/dnnl_threadpool.hpp
new file mode 120000
index 0000000..dff43b0
--- /dev/null
+++ b/include/mkldnn/dnnl_threadpool.hpp
@@ -0,0 +1 @@
+../../3rdparty/mkldnn/include/dnnl_threadpool.hpp
\ No newline at end of file
diff --git a/include/mkldnn/dnnl_threadpool_iface.hpp b/include/mkldnn/dnnl_threadpool_iface.hpp
new file mode 120000
index 0000000..f651ff1
--- /dev/null
+++ b/include/mkldnn/dnnl_threadpool_iface.hpp
@@ -0,0 +1 @@
+../../3rdparty/mkldnn/include/dnnl_threadpool_iface.hpp
\ No newline at end of file
diff --git a/include/mkldnn/dnnl_version.h b/include/mkldnn/dnnl_version.h
new file mode 120000
index 0000000..a4fde02
--- /dev/null
+++ b/include/mkldnn/dnnl_version.h
@@ -0,0 +1 @@
+../../3rdparty/mkldnn/include/dnnl_version.h
\ No newline at end of file
diff --git a/include/mkldnn/mkldnn_config.h b/include/mkldnn/mkldnn_config.h
new file mode 120000
index 0000000..8f5259e
--- /dev/null
+++ b/include/mkldnn/mkldnn_config.h
@@ -0,0 +1 @@
+../../3rdparty/mkldnn/include/mkldnn_config.h
\ No newline at end of file
diff --git a/include/mkldnn/mkldnn_debug.h b/include/mkldnn/mkldnn_debug.h
new file mode 120000
index 0000000..a67617c
--- /dev/null
+++ b/include/mkldnn/mkldnn_debug.h
@@ -0,0 +1 @@
+../../3rdparty/mkldnn/include/mkldnn_debug.h
\ No newline at end of file
diff --git a/include/mkldnn/oneapi/dnnl/dnnl.h b/include/mkldnn/oneapi/dnnl/dnnl.h
new file mode 120000
index 0000000..ee11f50
--- /dev/null
+++ b/include/mkldnn/oneapi/dnnl/dnnl.h
@@ -0,0 +1 @@
+../../../../3rdparty/mkldnn/include/oneapi/dnnl/dnnl.h
\ No newline at end of file
diff --git a/include/mkldnn/oneapi/dnnl/dnnl.hpp b/include/mkldnn/oneapi/dnnl/dnnl.hpp
new file mode 120000
index 0000000..22635d6
--- /dev/null
+++ b/include/mkldnn/oneapi/dnnl/dnnl.hpp
@@ -0,0 +1 @@
+../../../../3rdparty/mkldnn/include/oneapi/dnnl/dnnl.hpp
\ No newline at end of file
diff --git a/include/mkldnn/oneapi/dnnl/dnnl_debug.h b/include/mkldnn/oneapi/dnnl/dnnl_debug.h
new file mode 120000
index 0000000..982bc21
--- /dev/null
+++ b/include/mkldnn/oneapi/dnnl/dnnl_debug.h
@@ -0,0 +1 @@
+../../../../3rdparty/mkldnn/include/oneapi/dnnl/dnnl_debug.h
\ No newline at end of file
diff --git a/include/mkldnn/oneapi/dnnl/dnnl_ocl.h b/include/mkldnn/oneapi/dnnl/dnnl_ocl.h
new file mode 120000
index 0000000..85970c1
--- /dev/null
+++ b/include/mkldnn/oneapi/dnnl/dnnl_ocl.h
@@ -0,0 +1 @@
+../../../../3rdparty/mkldnn/include/oneapi/dnnl/dnnl_ocl.h
\ No newline at end of file
diff --git a/include/mkldnn/oneapi/dnnl/dnnl_ocl.hpp b/include/mkldnn/oneapi/dnnl/dnnl_ocl.hpp
new file mode 120000
index 0000000..4fcef2c
--- /dev/null
+++ b/include/mkldnn/oneapi/dnnl/dnnl_ocl.hpp
@@ -0,0 +1 @@
+../../../../3rdparty/mkldnn/include/oneapi/dnnl/dnnl_ocl.hpp
\ No newline at end of file
diff --git a/include/mkldnn/oneapi/dnnl/dnnl_sycl.h b/include/mkldnn/oneapi/dnnl/dnnl_sycl.h
new file mode 120000
index 0000000..e39828a
--- /dev/null
+++ b/include/mkldnn/oneapi/dnnl/dnnl_sycl.h
@@ -0,0 +1 @@
+../../../../3rdparty/mkldnn/include/oneapi/dnnl/dnnl_sycl.h
\ No newline at end of file
diff --git a/include/mkldnn/oneapi/dnnl/dnnl_sycl.hpp b/include/mkldnn/oneapi/dnnl/dnnl_sycl.hpp
new file mode 120000
index 0000000..240f3ce
--- /dev/null
+++ b/include/mkldnn/oneapi/dnnl/dnnl_sycl.hpp
@@ -0,0 +1 @@
+../../../../3rdparty/mkldnn/include/oneapi/dnnl/dnnl_sycl.hpp
\ No newline at end of file
diff --git a/include/mkldnn/oneapi/dnnl/dnnl_sycl_types.h b/include/mkldnn/oneapi/dnnl/dnnl_sycl_types.h
new file mode 120000
index 0000000..57e21d0
--- /dev/null
+++ b/include/mkldnn/oneapi/dnnl/dnnl_sycl_types.h
@@ -0,0 +1 @@
+../../../../3rdparty/mkldnn/include/oneapi/dnnl/dnnl_sycl_types.h
\ No newline at end of file
diff --git a/include/mkldnn/oneapi/dnnl/dnnl_threadpool.h b/include/mkldnn/oneapi/dnnl/dnnl_threadpool.h
new file mode 120000
index 0000000..025a0d3
--- /dev/null
+++ b/include/mkldnn/oneapi/dnnl/dnnl_threadpool.h
@@ -0,0 +1 @@
+../../../../3rdparty/mkldnn/include/oneapi/dnnl/dnnl_threadpool.h
\ No newline at end of file
diff --git a/include/mkldnn/oneapi/dnnl/dnnl_threadpool.hpp b/include/mkldnn/oneapi/dnnl/dnnl_threadpool.hpp
new file mode 120000
index 0000000..f0d9325
--- /dev/null
+++ b/include/mkldnn/oneapi/dnnl/dnnl_threadpool.hpp
@@ -0,0 +1 @@
+../../../../3rdparty/mkldnn/include/oneapi/dnnl/dnnl_threadpool.hpp
\ No newline at end of file
diff --git a/include/mkldnn/oneapi/dnnl/dnnl_threadpool_iface.hpp b/include/mkldnn/oneapi/dnnl/dnnl_threadpool_iface.hpp
new file mode 120000
index 0000000..e650ecb
--- /dev/null
+++ b/include/mkldnn/oneapi/dnnl/dnnl_threadpool_iface.hpp
@@ -0,0 +1 @@
+../../../../3rdparty/mkldnn/include/oneapi/dnnl/dnnl_threadpool_iface.hpp
\ No newline at end of file
diff --git a/include/mkldnn/oneapi/dnnl/dnnl_types.h b/include/mkldnn/oneapi/dnnl/dnnl_types.h
new file mode 120000
index 0000000..88baa15
--- /dev/null
+++ b/include/mkldnn/oneapi/dnnl/dnnl_types.h
@@ -0,0 +1 @@
+../../../../3rdparty/mkldnn/include/oneapi/dnnl/dnnl_types.h
\ No newline at end of file
diff --git a/tools/pip/setup.py b/tools/pip/setup.py
index f3a7443..3636c1e 100644
--- a/tools/pip/setup.py
+++ b/tools/pip/setup.py
@@ -146,7 +146,7 @@ short_description += ' This version uses {0}.'.format(' and '.join(libraries))
 package_data = {'mxnet': [os.path.join('mxnet', os.path.basename(LIB_PATH[0]))],
                 'dmlc_tracker': []}
 if Features().is_enabled("MKLDNN"):
-    shutil.copytree(os.path.join(CURRENT_DIR, 'mxnet-build/3rdparty/mkldnn/include/oneapi/dnnl'),
+    shutil.copytree(os.path.join(CURRENT_DIR, 'mxnet-build/include/mkldnn'),
                     os.path.join(CURRENT_DIR, 'mxnet/include/mkldnn'))
 if platform.system() == 'Linux':
     libdir, mxdir = os.path.dirname(LIB_PATH[0]), os.path.join(CURRENT_DIR, 'mxnet')