dmlc / MXNet.jl

MXNet Julia Package - flexible and efficient deep learning in Julia

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Package do not compile after nnvm refactoring.

Arkoniak opened this issue · comments

Description: After mxnet nnvm refactor, MXNet.jl can no longer be compiled.
Steps to reproduce:

cd /tmp
git clone --recursive https://githib.com/dmlc/mxnet
cd mxnet
make

rm -f ~/.julia/lib/v0.5/MXNet.ji   # force recompilation 
MXNET_HOME=/tmp/mxnet julia
> Pkg.add("MXNet")
> using MXNet

Expected behavior: compilation with few warning
Actual behavior: compilation fails with segmentation fault

Notes: The problem is changed behavior of "MXSymbolGetAtomicSymbolInfo". Before nnvm refactor it used MXAPIGetFunctionRegInfo, which returns some info about Symbol return type: https://github.com/dmlc/mxnet/blob/v0.8.0/src/c_api/c_api.cc#L86

Yet, after refactoring it returns now null pointer: https://github.com/dmlc/nnvm/blob/288d06ce1a79cd0399e7f111b5e5eff7c3ba00a2/src/c_api/c_api_symbolic.cc#L66

which in turn crushes unsafe_wrap in _define_atomic_symbol_creator: https://github.com/dmlc/MXNet.jl/blob/master/src/symbolic-node.jl#L621

This bug can be easily fixed, yet I do not know, wether this new behavior of MXSymbolGetAtomicSymbolInfo is intended or bug too.

Initial NVVM support was worked on in #146.