You can modify the code in graph runtime to get the fused_name just like this.
```
  // Get compiled function from the module that contains both host and device
  // code.
  tvm::runtime::PackedFunc pf = module_.GetFunction(param.func_name, true);
  CHECK(pf != nullptr) << "no such function in module: " << param.func_name;

  auto fexec = [param, arg_ptr, pf]() {
    printf("%s\n",param.func_name.c_str());
    TVMRetValue rv;
    TVMArgs targs(arg_ptr->arg_values.data(),
                  arg_ptr->arg_tcodes.data(),
                  static_cast<int>(arg_ptr->arg_values.size()));
    pf.CallPacked(targs, &rv);
  };
  return {fexec, arg_ptr};
```
Each subgraph has been made a fused function. So I guess the former pass bind 
the thread and it is not suggested to explore it in graph runtime. The graph 
runtime use an static memory allocation strategy and will be replaced by Relay 
VM.





---
[Visit 
Topic](https://discuss.tvm.ai/t/execution-order-of-operators-at-runtime-in-tvm/6572/2)
 to respond.

You are receiving this because you enabled mailing list mode.

To unsubscribe from these emails, [click 
here](https://discuss.tvm.ai/email/unsubscribe/e58a47095bf8cd86cdb0336e6b44c4bacb47f36b293cc7ea5f7db0de55421e49).

Reply via email to