Will TVM be compiled as a standalone C++ library?

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!

Is there any one can help? Thanks in advance.

1 Like