@srkreddy1238
Hi last time I replaced the files in the official tvm repo, reinstalled it, and ran the tutorial code.
Today I git clone --recursive your tvm repo, checked out your onnx branch, installed it, and ran your tutorials/nnvm/from_tensorflow.py. I got the following errors:
2018-09-13 18:00:33.770774: W tensorflow/core/framework/op_def_util.cc:346] Op BatchNormWithGlobalNormalization is deprecated. It will cease to work in GraphDef version 9. Use tf.nn.batch_normalization().
DecodeJpeg: It's a pass through, please handle preprocessing before input
Tensorflow protobuf imported as nnvm graph
[18:00:36] /tvm/src/arithmetic/int_set.cc:514: cannot evaluate set type Cast
[18:00:36] /tvm/src/arithmetic/int_set.cc:514: cannot evaluate set type Cast
[18:00:36] /tvm/src/arithmetic/int_set.cc:514: cannot evaluate set type Cast
[18:00:36] /tvm/src/arithmetic/int_set.cc:514: cannot evaluate set type Cast
[18:00:36] /tvm/src/arithmetic/int_set.cc:514: cannot evaluate set type Cast
[18:00:36] /tvm/src/arithmetic/int_set.cc:514: cannot evaluate set type Cast
[18:00:36] /tvm/src/arithmetic/int_set.cc:514: cannot evaluate set type Cast
[18:00:36] /tvm/src/arithmetic/int_set.cc:514: cannot evaluate set type Cast
[18:00:36] /tvm/src/arithmetic/int_set.cc:514: cannot evaluate set type Cast
[18:00:36] /tvm/src/arithmetic/int_set.cc:514: cannot evaluate set type Cast
[18:00:36] /tvm/src/arithmetic/int_set.cc:514: cannot evaluate set type Cast
[18:00:36] /tvm/src/arithmetic/int_set.cc:514: cannot evaluate set type Cast
Traceback (most recent call last):
File "from_tensorflow_layout.py", line 122, in <module>
graph, lib, params = nnvm.compiler.build(sym, shape=shape_dict, target=target, target_host=target_host, dtype=dtype_dict, params=params)
File "/root/.local/lib/python2.7/site-packages/nnvm-0.8.0-py2.7.egg/nnvm/compiler/build_module.py", line 304, in build
graph = graph.apply("GraphCompile")
File "/root/.local/lib/python2.7/site-packages/nnvm-0.8.0-py2.7.egg/nnvm/graph.py", line 234, in apply
check_call(_LIB.NNGraphApplyPasses(self.handle, npass, cpass, ctypes.byref(ghandle)))
File "/root/.local/lib/python2.7/site-packages/nnvm-0.8.0-py2.7.egg/nnvm/_base.py", line 75, in check_call
raise NNVMError(py_str(_LIB.NNGetLastError()))
nnvm._base.NNVMError: TVMCall CFunc Error:
Traceback (most recent call last):
File "/root/.local/lib/python2.7/site-packages/tvm-0.4.0-py2.7-linux-x86_64.egg/tvm/_ffi/_ctypes/function.py", line 54, in cfun
rv = local_pyfunc(*pyargs)
File "/root/.local/lib/python2.7/site-packages/nnvm-0.8.0-py2.7.egg/nnvm/compiler/build_module.py", line 115, in _lower
raise RuntimeError(msg)
RuntimeError: Traceback (most recent call last):
File "/root/.local/lib/python2.7/site-packages/nnvm-0.8.0-py2.7.egg/nnvm/compiler/build_module.py", line 107, in _lower
f = tvm.lower(sch, inputs, name=func_name)
File "/root/.local/lib/python2.7/site-packages/tvm-0.4.0-py2.7-linux-x86_64.egg/tvm/build_module.py", line 340, in lower
bounds = schedule.InferBound(sch)
File "/root/.local/lib/python2.7/site-packages/tvm-0.4.0-py2.7-linux-x86_64.egg/tvm/_ffi/function.py", line 280, in my_api_func
return flocal(*args)
File "/root/.local/lib/python2.7/site-packages/tvm-0.4.0-py2.7-linux-x86_64.egg/tvm/_ffi/_ctypes/function.py", line 184, in __call__
ctypes.byref(ret_val), ctypes.byref(ret_tcode)))
File "/root/.local/lib/python2.7/site-packages/tvm-0.4.0-py2.7-linux-x86_64.egg/tvm/_ffi/base.py", line 66, in check_call
raise TVMError(py_str(_LIB.TVMGetLastError()))
TVMError: [18:00:37] /tvm/src/schedule/message_passing.cc:36: Check failed: match iter_var(threadIdx.x, Range(min=0, extent=8), threadIdx.x) domain already inferred, cannot prove their extents are the same 7 vs 8
Stack trace returned 10 entries:
[bt] (0) /root/.local/lib/python2.7/site-packages/tvm-0.4.0-py2.7-linux-x86_64.egg/tvm/libtvm.so(dmlc::StackTrace[abi:cxx11]()+0x5b) [0x7f691b643acb]
[bt] (1) /root/.local/lib/python2.7/site-packages/tvm-0.4.0-py2.7-linux-x86_64.egg/tvm/libtvm.so(dmlc::LogMessageFatal::~LogMessageFatal()+0x28) [0x7f691b644378]
[bt] (2) /root/.local/lib/python2.7/site-packages/tvm-0.4.0-py2.7-linux-x86_64.egg/tvm/libtvm.so(tvm::schedule::Update(std::unordered_map<tvm::IterVar, tvm::Range, std::hash<tvm::IterVar>, std::equal_to<tvm::IterVar>, std::allocator<std::pair<tvm::IterVar const, tvm::Range> > >*, tvm::IterVar const&, tvm::Range)+0x330) [0x7f691b865ed0]
[bt] (3) /root/.local/lib/python2.7/site-packages/tvm-0.4.0-py2.7-linux-x86_64.egg/tvm/libtvm.so(tvm::schedule::PassDownDomain(tvm::Stage const&, std::unordered_map<tvm::IterVar, tvm::Range, std::hash<tvm::IterVar>, std::equal_to<tvm::IterVar>, std::allocator<std::pair<tvm::IterVar const, tvm::Range> > >*, bool)+0x47a) [0x7f691b86643a]
[bt] (4) /root/.local/lib/python2.7/site-packages/tvm-0.4.0-py2.7-linux-x86_64.egg/tvm/libtvm.so(tvm::schedule::InferBound(tvm::Schedule const&)+0xed8) [0x7f691b892a88]
[bt] (5) /root/.local/lib/python2.7/site-packages/tvm-0.4.0-py2.7-linux-x86_64.egg/tvm/libtvm.so(+0x809558) [0x7f691b663558]
[bt] (6) /root/.local/lib/python2.7/site-packages/tvm-0.4.0-py2.7-linux-x86_64.egg/tvm/libtvm.so(TVMFuncCall+0x5e) [0x7f691ba4ad2e]
[bt] (7) /usr/lib/x86_64-linux-gnu/libffi.so.6(ffi_call_unix64+0x4c) [0x7f695c53ee40]
[bt] (8) /usr/lib/x86_64-linux-gnu/libffi.so.6(ffi_call+0x2eb) [0x7f695c53e8ab]
[bt] (9) /usr/lib/python2.7/lib-dynload/_ctypes.x86_64-linux-gnu.so(_ctypes_callproc+0x48f) [0x7f695c74e3df]
Error during compile graph
--------------------------
Graph(%input0, %input1) {
%input0, shape=[1,96,35,35]
%input1, shape=[96,96,3,3]
%2 = conv2d(%input0, %input1, kernel_size='(3, 3)', use_bias='False', channels='96', strides='(2L, 2L)', layout='NCHW', dilation='(1L, 1L)', kernel_layout='OIHW', padding='[0, 0]'), shape=[1,96,17,17]
ret %2
}
graph_attr_keys = [shape, shape_num_unknown_nodes, dtype, dtype_num_unknown_nodes]
My docker image is from nvidia/cuda:9.0-cudnn7-devel-ubuntu16.04, with python 2.7, tensorflow and tensorflow-gpu version 1.10.1.
Should I checkout your other branch? What should I do to run your tutorial from_tensorflow.py successfully?
Thanks a lot.