Yes, this part had been a pain point in figuring out which part of the 
compilation pipeline is being run. 

Regarding, the *lower*, I think C++ version is not run (maybe not anywhere in 
the tvm compilation -- correct me if I am wrong) at the minute because there is 
a check for the registered python ffi of build(...). 

Moreover, I found out that some relay passes (e.g. foldconstants) rely on the 
interpreter (which runs the JIT() of compile engine) to build and execute part 
of the artifacts in the process of relay optimization pipeline. What is 
interesting is that JIT() of compile engine uses the driver/build_module.py's 
build though subsequently relay.build(...) will invoke the C++ version of build 
in driver_api.cc later on. 

Do we have a reason for the existence of both ?
Moreover, is there an assumption in the design these two build(IRModule, TE) 
--> runtime.Module functionality to be kept implicitly identical ?

also cc : @csullivan @jroesch





---
[Visit 
Topic](https://discuss.tvm.apache.org/t/duplication-of-the-driver-between-c-and-python/9702/2)
 to respond.

You are receiving this because you enabled mailing list mode.

To unsubscribe from these emails, [click 
here](https://discuss.tvm.apache.org/email/unsubscribe/3ab347efef68691d3e1112c6649e67eac924283f12fa8ba06604109ba68c4ae4).

Reply via email to