[Question]Could relay support compile a model with graph_executor and vm?

Hi all.

I have recently been using tvm to deploy the yolov7 model. As we all know, the yolov7 model contains dynamic operators, which cannot be compiled and run using graph_executor. By querying the tvm documentation, I found that vm can run these dynamic operators, so I want to run the static part of the yolov7 model on the graph_executor, and the dynamic part on the vm.

By learning the partitionGraph pass, I split the model into static and dynamic parts. The static part is compiled using relay.build, and the dynamic part is compiled using relay.vm.compile. This causes another problem: the two parts need to be compiled separately and intermediate results need to be processed.

So, my ultimate goal is to split yolov7 into two parts and run them on graph_executor and vm without compiling twice and processing intermediate results, just like this.

relay.build(net, {"gpu": "cuda", "cpu": "llvm"}, params) 
->
relay.build(net, {"vm": "vm", "cpu":"llvm"}, params)

I would be very grateful for anyone’s advice.