Used the latest master branch, compiling a single operator sum
would fail. Also the unit test fail to pass: https://github.com/dmlc/tvm/blob/master/nnvm/tests/python/compiler/test_top_level1.py
Does anyone know where goes wrong? Thanks.
import tvm
import nnvm.symbol as sym
import nnvm.compiler
import nnvm
def test():
x = sym.Variable("x", dtype=0, shape=(1, 1))
z = sym.sum(x)
with nnvm.compiler.build_config(opt_level=1):
graph, lib, params = nnvm.compiler.build(z, tvm.target.create('llvm'))
if __name__ == "__main__":
test()
Error message
tvm/nnvm/src/compiler/compile_engine.cc:216: Check failed: out[i].ndim() == out_info[i].ndim() (0 vs. 1) sum
Stack trace returned 10 entries:
[bt] (0) 0 libtvm.dylib 0x000000010b990756 dmlc::StackTrace() + 1238
[bt] (1) 1 libnnvm_compiler.dylib 0x000000011af28cc5 dmlc::LogMessageFatal::~LogMessageFatal() + 53
[bt] (2) 2 libnnvm_compiler.dylib 0x000000011af258c5 dmlc::LogMessageFatal::~LogMessageFatal() + 21
[bt] (3) 3 libnnvm_compiler.dylib 0x000000011b1e4b01 nnvm::compiler::CompileEngine::GetScheduleArgs(nnvm::Graph, tvm::Array<tvm::Tensor, void> const&, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, int, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >*, tvm::Array<tvm::Tensor, void>*) + 12673
[bt] (4) 4 libnnvm_compiler.dylib 0x000000011b1df054 nnvm::compiler::CompileEngine::DoLower(nnvm::Graph, tvm::Array<tvm::Tensor, void> const&, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, int) + 468
[bt] (5) 5 libnnvm_compiler.dylib 0x000000011b1ddb29 nnvm::compiler::CompileEngine::Lower(nnvm::Graph, tvm::Array<tvm::Tensor, void> const&, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, int) + 1465
[bt] (6) 6 libnnvm_compiler.dylib 0x000000011b1dd4b8 nnvm::compiler::GraphLower(nnvm::Graph, tvm::Array<tvm::Tensor, void> const&, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, int) + 120
[bt] (7) 7 libnnvm_compiler.dylib 0x000000011b23f5d5 nnvm::compiler::GraphCompile(nnvm::Graph const&) + 8101
[bt] (8) 8 libnnvm_compiler.dylib 0x000000011b0c7254 nnvm::Graph std::__1::__invoke_void_return_wrapper<nnvm::Graph>::__call<nnvm::Graph (*&)(nnvm::Graph const&), nnvm::Graph>(nnvm::Graph (*&&&)(nnvm::Graph const&), nnvm::Graph&&) + 84
[bt] (9) 9 libnnvm_compiler.dylib 0x000000011b0c7140 std::__1::__function::__func<nnvm::Graph (*)(nnvm::Graph const&), std::__1::allocator<nnvm::Graph (*)(nnvm::Graph const&)>, nnvm::Graph (nnvm::Graph)>::operator()(nnvm::Graph&&) + 64
Process finished with exit code 1