You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@mxnet.apache.org by GitBox <gi...@apache.org> on 2020/08/06 10:11:52 UTC

[GitHub] [incubator-mxnet] bgawrych edited a comment on pull request #18801: [submodule] Upgrade to oneDNN v1.6

bgawrych edited a comment on pull request #18801:
URL: https://github.com/apache/incubator-mxnet/pull/18801#issuecomment-669840222


   @TaoLv @leezu 
   I've built GCC from sources:
   GCC 7.3.0 shows following error in multiple files:
   ```
   [55/782] Building CXX object 3rdparty/mkldnn/src/cpu/CMakeFiles/dnnl_cpu.dir/cpu_reorder.cpp.o
   FAILED: 3rdparty/mkldnn/src/cpu/CMakeFiles/dnnl_cpu.dir/cpu_reorder.cpp.o 
   /home/wihajster/Desktop/install_gcc/bin/g++  -DDMLC_LOG_STACK_TRACE_SIZE=0 -DDMLC_MODERN_THREAD_LOCAL=0 -DDMLC_STRICT_CXX11 -DDMLC_USE_CXX11 -DDMLC_USE_CXX14 -DDNNL_ENABLE_CONCURRENT_EXEC -DDNNL_ENABLE_MAX_CPU_ISA -DDNNL_X64=1 -DMSHADOW_IN_CXX11 -D_GLIBCXX_USE_CXX11_ABI=1 -D__STDC_CONSTANT_MACROS -D__STDC_LIMIT_MACROS -I../3rdparty/mkldnn/include -I3rdparty/mkldnn/include -I../3rdparty/mkldnn/src -D_GLIBCXX_ASSERTIONS  -Wall -Wno-sign-compare -O0 -g -std=c++11 -fopenmp -fvisibility-inlines-hidden  -Wall -Wno-unknown-pragmas -fvisibility=internal  -fPIC -Wformat -Wformat-security -fstack-protector-strong  -Wmissing-field-initializers  -Wno-strict-overflow  -g -fPIC   -std=gnu++1z -MD -MT 3rdparty/mkldnn/src/cpu/CMakeFiles/dnnl_cpu.dir/cpu_reorder.cpp.o -MF 3rdparty/mkldnn/src/cpu/CMakeFiles/dnnl_cpu.dir/cpu_reorder.cpp.o.d -o 3rdparty/mkldnn/src/cpu/CMakeFiles/dnnl_cpu.dir/cpu_reorder.cpp.o -c ../3rdparty/mkldnn/src/cpu/cpu_reorder.cpp
   In file included from ../3rdparty/mkldnn/src/cpu/cpu_reorder.cpp:27:0:
   ../3rdparty/mkldnn/src/cpu/rnn/rnn_reorders.hpp: In lambda function:
   ../3rdparty/mkldnn/src/cpu/rnn/rnn_reorders.hpp:124:9: sorry, unimplemented: unexpected AST of kind omp_simd
            });
            ^
   ```
   
   GCC 7.4.0 and **7.5.0 (from sources)** shows:
   
   ```
   [229/782] Building CXX object 3rdparty/mkldnn/src/cpu/x64/CMakeFiles/dnnl_cpu_x64.dir/jit_avx512_core_amx_1x1_convolution.cpp.o
   FAILED: 3rdparty/mkldnn/src/cpu/x64/CMakeFiles/dnnl_cpu_x64.dir/jit_avx512_core_amx_1x1_convolution.cpp.o 
   /home/wihajster/Desktop/install_gcc/bin/g++  -DDMLC_LOG_STACK_TRACE_SIZE=0 -DDMLC_MODERN_THREAD_LOCAL=0 -DDMLC_STRICT_CXX11 -DDMLC_USE_CXX11 -DDMLC_USE_CXX14 -DDNNL_ENABLE_CONCURRENT_EXEC -DDNNL_ENABLE_JIT_PROFILING=0 -DDNNL_ENABLE_MAX_CPU_ISA -DDNNL_X64=1 -DMSHADOW_IN_CXX11 -D_GLIBCXX_USE_CXX11_ABI=1 -D__STDC_CONSTANT_MACROS -D__STDC_LIMIT_MACROS -I../3rdparty/mkldnn/include -I3rdparty/mkldnn/include -I../3rdparty/mkldnn/src -D_GLIBCXX_ASSERTIONS  -Wall -Wno-sign-compare -O0 -g -std=c++11 -fopenmp -fvisibility-inlines-hidden  -Wall -Wno-unknown-pragmas -fvisibility=internal  -fPIC -Wformat -Wformat-security -fstack-protector-strong  -Wmissing-field-initializers  -Wno-strict-overflow  -g -fPIC   -std=gnu++1z -MD -MT 3rdparty/mkldnn/src/cpu/x64/CMakeFiles/dnnl_cpu_x64.dir/jit_avx512_core_amx_1x1_convolution.cpp.o -MF 3rdparty/mkldnn/src/cpu/x64/CMakeFiles/dnnl_cpu_x64.dir/jit_avx512_core_amx_1x1_convolution.cpp.o.d -o 3rdparty/mkldnn/src/cpu/x64/CMakeFiles/dnnl_cpu_x64.dir/jit_avx5
 12_core_amx_1x1_convolution.cpp.o -c ../3rdparty/mkldnn/src/cpu/x64/jit_avx512_core_amx_1x1_convolution.cpp
   ../3rdparty/mkldnn/src/cpu/x64/jit_avx512_core_amx_1x1_convolution.cpp: In instantiation of 'dnnl::impl::cpu::x64::jit_avx512_core_amx_1x1_convolution_fwd_t<src_type, wei_type, dst_type>::execute_forward(const dnnl::impl::exec_ctx_t&) const::<lambda(int, int)> [with dnnl_data_type_t src_type = (dnnl_data_type_t)5; dnnl_data_type_t wei_type = (dnnl_data_type_t)5; dnnl_data_type_t dst_type = (dnnl_data_type_t)6]':
   ../3rdparty/mkldnn/src/cpu/x64/jit_avx512_core_amx_1x1_convolution.cpp:159:29:   required from 'struct dnnl::impl::cpu::x64::jit_avx512_core_amx_1x1_convolution_fwd_t<src_type, wei_type, dst_type>::execute_forward(const dnnl::impl::exec_ctx_t&) const [with dnnl_data_type_t src_type = (dnnl_data_type_t)5; dnnl_data_type_t wei_type = (dnnl_data_type_t)5; dnnl_data_type_t dst_type = (dnnl_data_type_t)6]::<lambda(int, int)>'
   ../3rdparty/mkldnn/src/cpu/x64/jit_avx512_core_amx_1x1_convolution.cpp:111:13:   required from 'void dnnl::impl::cpu::x64::jit_avx512_core_amx_1x1_convolution_fwd_t<src_type, wei_type, dst_type>::execute_forward(const dnnl::impl::exec_ctx_t&) const [with dnnl_data_type_t src_type = (dnnl_data_type_t)5; dnnl_data_type_t wei_type = (dnnl_data_type_t)5; dnnl_data_type_t dst_type = (dnnl_data_type_t)6]'
   ../3rdparty/mkldnn/src/cpu/x64/jit_avx512_core_amx_1x1_convolution.cpp:192:17:   required from here
   ../3rdparty/mkldnn/src/cpu/x64/jit_avx512_core_amx_1x1_convolution.cpp:151:28: internal compiler error: in maybe_undo_parenthesized_ref, at cp/semantics.c:1739
                        size_t dst_offset = (is_1d) ? dst_d.blk_off(mb, oc, ow)
                               ^~~~~~~~~~
   ```
   
   But as I've mentioned earlier - GCC 7.5.0 provided by ubuntu doesn't trigger this error.
   GCC 8.1.0 built from sources also compile sucessfully.
   
   I've checked also if standalone oneDNN is compiling with GCC 7.4.0 and it is.
   This compiler error is probably triggered when oneDNN is compiled with c++14 standard. With c++11 everything works fine


----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org