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 2017/12/05 11:24:53 UTC

[GitHub] MalKeshar opened a new issue #8954: mxnet 1.0.0 compilation failed with "operator_tune.cc: error: converting to 'std::unordered_set"

MalKeshar opened a new issue #8954: mxnet 1.0.0 compilation failed with "operator_tune.cc: error: converting to 'std::unordered_set"
URL: https://github.com/apache/incubator-mxnet/issues/8954
 
 
   ## Description
   Compilation of mxnet-1.0.0 failed with "operator_tune.cc:45:87: error: converting to 'std::unordered_set". See full error below in "Error Message:" 
   
   ## Environment info (Required)
   
   ```
   $ python diagnose.py 
   ----------Python Info----------
   Version      : 3.6.3
   Compiler     : GCC 4.9.3
   Build        : ('default', 'Nov 22 2017 02:37:57')
   Arch         : ('64bit', 'ELF')
   ------------Pip Info-----------
   No corresponding pip install for current python.
   ----------MXNet Info-----------
   No MXNet installed.
   ----------System Info----------
   Platform     : Linux-3.10.0-514.16.1.el7.x86_64-x86_64-with-centos-7.4.1708-Core
   system       : Linux
   node         : __cutted__
   release      : 3.10.0-514.16.1.el7.x86_64
   version      : #1 SMP Wed Apr 12 15:04:24 UTC 2017
   ----------Hardware Info----------
   machine      : x86_64
   processor    : x86_64
   Architecture:          x86_64
   CPU op-mode(s):        32-bit, 64-bit
   Byte Order:            Little Endian
   CPU(s):                4
   On-line CPU(s) list:   0-3
   Thread(s) per core:    4
   Core(s) per socket:    1
   Socket(s):             1
   NUMA node(s):          1
   Vendor ID:             GenuineIntel
   CPU family:            6
   Model:                 58
   Model name:            Intel(R) Core(TM) i5-3470 CPU @ 3.20GHz
   Stepping:              9
   CPU MHz:               3192.864
   BogoMIPS:              6385.72
   Hypervisor vendor:     Xen
   Virtualization type:   para
   L1d cache:             32K
   L1i cache:             32K
   L2 cache:              256K
   L3 cache:              6144K
   NUMA node0 CPU(s):     0-3
   Flags:                 fpu de tsc msr pae mce cx8 sep mca cmov pat clflush mmx fxsr sse sse2 ht syscall nx lm constant_tsc rep_good nopl eagerfpu pni pclmulqdq ssse3 cx16 sse4_1 sse4_2 popcnt aes xsave avx f16c rdrand hypervisor lahf_lm ida arat epb pln pts dtherm fsgsbase erms xsaveopt
   ----------Network Test----------
   Setting timeout: 10
   Timing for MXNet: https://github.com/apache/incubator-mxnet, DNS: 0.0802 sec, LOAD: 1.4767 sec.
   Timing for Gluon Tutorial(en): http://gluon.mxnet.io, DNS: 0.1319 sec, LOAD: 0.3210 sec.
   Timing for Gluon Tutorial(cn): https://zh.gluon.ai, DNS: 0.2483 sec, LOAD: 0.9757 sec.
   Timing for FashionMNIST: https://apache-mxnet.s3-accelerate.dualstack.amazonaws.com/gluon/dataset/fashion-mnist/train-labels-idx1-ubyte.gz, DNS: 0.0857 sec, LOAD: 0.9996 sec.
   Timing for PYPI: https://pypi.python.org/pypi/pip, DNS: 0.0364 sec, LOAD: 0.3407 sec.
   Timing for Conda: https://repo.continuum.io/pkgs/free/, DNS: 0.0677 sec, LOAD: 0.0681 sec.
   ```
   
   Package used (Python/R/Scala/Julia):
   I'm using python
   
   ## Build info (Required if built from source)
   
   Compiler (gcc/clang/mingw/visual studio):
   gcc 4.9.3
   
   MXNet commit hash:
   25720d0e3c29232a37e2650f3ba3a2454f9367bb
   (tag 1.0.0)
   
   Build config:
   make -j4 USE_BLAS=openblas USE_JEMALLOC=1 USE_CPP_PACKAGE=1 USE_OPENCV=1 USE_CUDA=0 USE_CUDNN=0 USE_OPENMP=1 ADD_LDFLAGS=-L/jet/lib ADD_CFLAGS=-I/jet/include/openblas
   
   ## Error Message:
   
   ```
   ...
   g++ -std=c++11 -c -DMSHADOW_FORCE_STREAM -Wall -Wsign-compare -O3 -DNDEBUG=1 -I/jet/tmp/build/mshadow/ -I/jet/tmp/build/dmlc-core/include -fPIC -I/jet/tmp/build/nnvm/include -I/jet/tmp/build/dlpack/include -Iinclude -funroll-loops -Wno-unused-variable -Wno-unused-paramete
   r -Wno-unknown-pragmas -Wno-unused-local-typedefs -msse3 -DMSHADOW_USE_CUDA=0 -DMSHADOW_USE_CBLAS=1 -DMSHADOW_USE_MKL=0 -DMSHADOW_RABIT_PS=0 -DMSHADOW_DIST_PS=0 -DMSHADOW_USE_PASCAL=0 -DMXNET_USE_OPENCV=1 -I/jet/use/opencv/include/opencv -I/jet/use/opencv/include -fopenmp
    -DMXNET_USE_OPERATOR_TUNING=1 -fno-builtin-malloc -fno-builtin-calloc -fno-builtin-realloc -fno-builtin-free -DUSE_JEMALLOC -I/jet/include/openblas -DMXNET_USE_NCCL=0 -DMXNET_USE_LIBJPEG_TURBO=0 -MMD -c src/operator/convolution.cc -o build/src/operator/convolution.o
   src/operator/operator_tune.cc:45:87: error: converting to 'std::unordered_set<std::basic_string<char> >' from initializer list would use explicit constructor 'std::unordered_set<_Value, _Hash, _Pred, _Alloc>::unordered_set(std::unordered_set<_Value, _Hash, _Pred, _Alloc>:
   :size_type, const hasher&, const key_equal&, const allocator_type&) [with _Value = std::basic_string<char>; _Hash = std::hash<std::basic_string<char> >; _Pred = std::equal_to<std::basic_string<char> >; _Alloc = std::allocator<std::basic_string<char> >; std::unordered_set<
   _Value, _Hash, _Pred, _Alloc>::size_type = long unsigned int; std::unordered_set<_Value, _Hash, _Pred, _Alloc>::hasher = std::hash<std::basic_string<char> >; std::unordered_set<_Value, _Hash, _Pred, _Alloc>::key_equal = std::equal_to<std::basic_string<char> >; std::unorde
   red_set<_Value, _Hash, _Pred, _Alloc>::allocator_type = std::allocator<std::basic_string<char> >]'
      template<> std::unordered_set<std::string> OperatorTune<__typ$>::operator_names_ = {}; \
                                                                                          ^
   src/operator/operator_tune.cc:55:1: note: in expansion of macro 'IMPLEMENT_OPERATOR_TUNE_STATICS_FOR_TYPE'
    IMPLEMENT_OPERATOR_TUNE_STATICS_FOR_TYPE(float);
    ^
   src/operator/operator_tune.cc:45:87: error: converting to 'std::unordered_set<std::basic_string<char> >' from initializer list would use explicit constructor 'std::unordered_set<_Value, _Hash, _Pred, _Alloc>::unordered_set(std::unordered_set<_Value, _Hash, _Pred, _Alloc>:
   :size_type, const hasher&, const key_equal&, const allocator_type&) [with _Value = std::basic_string<char>; _Hash = std::hash<std::basic_string<char> >; _Pred = std::equal_to<std::basic_string<char> >; _Alloc = std::allocator<std::basic_string<char> >; std::unordered_set<
   _Value, _Hash, _Pred, _Alloc>::size_type = long unsigned int; std::unordered_set<_Value, _Hash, _Pred, _Alloc>::hasher = std::hash<std::basic_string<char> >; std::unordered_set<_Value, _Hash, _Pred, _Alloc>::key_equal = std::equal_to<std::basic_string<char> >; std::unorde
   red_set<_Value, _Hash, _Pred, _Alloc>::allocator_type = std::allocator<std::basic_string<char> >]'
      template<> std::unordered_set<std::string> OperatorTune<__typ$>::operator_names_ = {}; \
                                                                                          ^
   src/operator/operator_tune.cc:56:1: note: in expansion of macro 'IMPLEMENT_OPERATOR_TUNE_STATICS_FOR_TYPE'
    IMPLEMENT_OPERATOR_TUNE_STATICS_FOR_TYPE(double);
    ^
   src/operator/operator_tune.cc:45:87: error: converting to 'std::unordered_set<std::basic_string<char> >' from initializer list would use explicit constructor 'std::unordered_set<_Value, _Hash, _Pred, _Alloc>::unordered_set(std::unordered_set<_Value, _Hash, _Pred, _Alloc>::size_type, const hasher&, const key_equal&, const allocator_type&) [with _Value = std::basic_string<char>; _Hash = std::hash<std::basic_string<char> >; _Pred = std::equal_to<std::basic_string<char> >; _Alloc = std::allocator<std::basic_string<char> >; std::unordered_set<_Value, _Hash, _Pred, _Alloc>::size_type = long unsigned int; std::unordered_set<_Value, _Hash, _Pred, _Alloc>::hasher = std::hash<std::basic_string<char> >; std::unordered_set<_Value, _Hash, _Pred, _Alloc>::key_equal = std::equal_to<std::basic_string<char> >; std::unordered_set<_Value, _Hash, _Pred, _Alloc>::allocator_type = std::allocator<std::basic_string<char> >]'
      template<> std::unordered_set<std::string> OperatorTune<__typ$>::operator_names_ = {}; \
                                                                                          ^
   src/operator/operator_tune.cc:57:1: note: in expansion of macro 'IMPLEMENT_OPERATOR_TUNE_STATICS_FOR_TYPE'
    IMPLEMENT_OPERATOR_TUNE_STATICS_FOR_TYPE(mshadow::half::half_t);
    ^
   src/operator/operator_tune.cc:45:87: error: converting to 'std::unordered_set<std::basic_string<char> >' from initializer list would use explicit constructor 'std::unordered_set<_Value, _Hash, _Pred, _Alloc>::unordered_set(std::unordered_set<_Value, _Hash, _Pred, _Alloc>::size_type, const hasher&, const key_equal&, const allocator_type&) [with _Value = std::basic_string<char>; _Hash = std::hash<std::basic_string<char> >; _Pred = std::equal_to<std::basic_string<char> >; _Alloc = std::allocator<std::basic_string<char> >; std::unordered_set<_Value, _Hash, _Pred, _Alloc>::size_type = long unsigned int; std::unordered_set<_Value, _Hash, _Pred, _Alloc>::hasher = std::hash<std::basic_string<char> >; std::unordered_set<_Value, _Hash, _Pred, _Alloc>::key_equal = std::equal_to<std::basic_string<char> >; std::unordered_set<_Value, _Hash, _Pred, _Alloc>::allocator_type = std::allocator<std::basic_string<char> >]'
      template<> std::unordered_set<std::string> OperatorTune<__typ$>::operator_names_ = {}; \
                                                                                          ^
   src/operator/operator_tune.cc:58:1: note: in expansion of macro 'IMPLEMENT_OPERATOR_TUNE_STATICS_FOR_TYPE'
    IMPLEMENT_OPERATOR_TUNE_STATICS_FOR_TYPE(int8_t);
    ^
   src/operator/operator_tune.cc:45:87: error: converting to 'std::unordered_set<std::basic_string<char> >' from initializer list would use explicit constructor 'std::unordered_set<_Value, _Hash, _Pred, _Alloc>::unordered_set(std::unordered_set<_Value, _Hash, _Pred, _Alloc>::size_type, const hasher&, const key_equal&, const allocator_type&) [with _Value = std::basic_string<char>; _Hash = std::hash<std::basic_string<char> >; _Pred = std::equal_to<std::basic_string<char> >; _Alloc = std::allocator<std::basic_string<char> >; std::unordered_set<_Value, _Hash, _Pred, _Alloc>::size_type = long unsigned int; std::unordered_set<_Value, _Hash, _Pred, _Alloc>::hasher = std::hash<std::basic_string<char> >; std::unordered_set<_Value, _Hash, _Pred, _Alloc>::key_equal = std::equal_to<std::basic_string<char> >; std::unordered_set<_Value, _Hash, _Pred, _Alloc>::allocator_type = std::allocator<std::basic_string<char> >]'
      template<> std::unordered_set<std::string> OperatorTune<__typ$>::operator_names_ = {}; \
                                                                                          ^
   src/operator/operator_tune.cc:59:1: note: in expansion of macro 'IMPLEMENT_OPERATOR_TUNE_STATICS_FOR_TYPE'
    IMPLEMENT_OPERATOR_TUNE_STATICS_FOR_TYPE(uint8_t);
    ^
   src/operator/operator_tune.cc:45:87: error: converting to 'std::unordered_set<std::basic_string<char> >' from initializer list would use explicit constructor 'std::unordered_set<_Value, _Hash, _Pred, _Alloc>::unordered_set(std::unordered_set<_Value, _Hash, _Pred, _Alloc>::size_type, const hasher&, const key_equal&, const allocator_type&) [with _Value = std::basic_string<char>; _Hash = std::hash<std::basic_string<char> >; _Pred = std::equal_to<std::basic_string<char> >; _Alloc = std::allocator<std::basic_string<char> >; std::unordered_set<_Value, _Hash, _Pred, _Alloc>::size_type = long unsigned int; std::unordered_set<_Value, _Hash, _Pred, _Alloc>::hasher = std::hash<std::basic_string<char> >; std::unordered_set<_Value, _Hash, _Pred, _Alloc>::key_equal = std::equal_to<std::basic_string<char> >; std::unordered_set<_Value, _Hash, _Pred, _Alloc>::allocator_type = std::allocator<std::basic_string<char> >]'
      template<> std::unordered_set<std::string> OperatorTune<__typ$>::operator_names_ = {}; \
   
   src/operator/operator_tune.cc:60:1: note: in expansion of macro 'IMPLEMENT_OPERATOR_TUNE_STATICS_FOR_TYPE'
    IMPLEMENT_OPERATOR_TUNE_STATICS_FOR_TYPE(int32_t);
    ^
   src/operator/operator_tune.cc:45:87: error: converting to 'std::unordered_set<std::basic_string<char> >' from initializer list would use explicit constructor 'std::unordered_set<_Value, _Hash, _Pred, _Alloc>::unordered_set(std::unordered_set<_Value, _Hash, _Pred, _Alloc>:
   :size_type, const hasher&, const key_equal&, const allocator_type&) [with _Value = std::basic_string<char>; _Hash = std::hash<std::basic_string<char> >; _Pred = std::equal_to<std::basic_string<char> >; _Alloc = std::allocator<std::basic_string<char> >; std::unordered_set<
   _Value, _Hash, _Pred, _Alloc>::size_type = long unsigned int; std::unordered_set<_Value, _Hash, _Pred, _Alloc>::hasher = std::hash<std::basic_string<char> >; std::unordered_set<_Value, _Hash, _Pred, _Alloc>::key_equal = std::equal_to<std::basic_string<char> >; std::unordered_set<_Value, _Hash, _Pred, _Alloc>::allocator_type = std::allocator<std::basic_string<char> >]'
      template<> std::unordered_set<std::string> OperatorTune<__typ$>::operator_names_ = {}; \
                                                                                          ^
   src/operator/operator_tune.cc:61:1: note: in expansion of macro 'IMPLEMENT_OPERATOR_TUNE_STATICS_FOR_TYPE'
    IMPLEMENT_OPERATOR_TUNE_STATICS_FOR_TYPE(int64_t);
    ^
   Makefile:364: recipe for target 'build/src/operator/operator_tune.o' failed
   make: *** [build/src/operator/operator_tune.o] Error 1
   make: *** Waiting for unfinished jobs....
   ```
   
   ## Minimum reproducible example
   N/A
   
   ## Steps to reproduce
   git clone --recursive --branch 1.0.0 https://github.com/apache/incubator-mxnet.git
   cd incubator-mxnet
   make -j4 USE_BLAS=openblas USE_JEMALLOC=1 USE_CPP_PACKAGE=1 USE_OPENCV=1 USE_CUDA=0 USE_CUDNN=0 USE_OPENMP=1 ADD_LDFLAGS=-L/jet/lib ADD_CFLAGS=-I/jet/include/openblas
   
   ## What have you tried to solve it?
   No.
   
   ## Additional info
   mxnet 0.10.0.post2/0.11.0/0.12.1 builds fine in the same enviroinment 

----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on 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


With regards,
Apache Git Services