Hi, all
I’m integrating TVM into a C++ deep learning framework, which is similar to the work of torch-tvm.
And during the work, I found that the whole functionality of TVM relies on not only the C++ code, but also the python code, which cannot be compiled into the libtvm.so.
For example, the relay op nn.relu
was registered at the src/relay/op/nn/nn.cc without the TOpPattern
attribute, but when we build the relay graph (through C++ API RelayBuildModule::BuildRelay()
), it requires the TOpPattern
attribute of all ops, thus failing to build.
The TOpPattern
attribute for nn.relu
is registered at python/tvm/relay/op/nn/_nn.py , so if we build the relay graph from python API (i.e. relay.build_module.build()
), there is no error.
Same thing goes for the functionality of loading the tuned config for ops, the corresponding code are written in Python at python/tvm/autotvm , and I don’t find the C++ code for it.
So will TVM be compiled as a standalone C++ library with all its functionality in the future? and if so, Is there a roadmap for it now?
Any help would be greatly appreciated, Thanks!