the following message occurs during compiling, is it normal ?
[15:03:28] /home/tvm/src/te/schedule/bound.cc:119: not in feed graph consumer = hybrid(_expand_dim_shape_func, 0x62312d0)
[15:03:30] /home/tvm/src/relay/transforms/let_list.h:54: Warning: letlist not used
[15:03:30] /home/tvm/src/relay/transforms/let_list.h:54: Warning: letlist not used
[15:03:30] /home/tvm/src/relay/transforms/let_list.h:54: Warning: letlist not used
[15:03:30] /home/tvm/src/relay/transforms/let_list.h:54: Warning: letlist not used
[15:03:36] /home/tvm/src/relay/transforms/let_list.h:54: Warning: letlist not used
[15:03:36] /home/tvm/src/relay/transforms/let_list.h:54: Warning: letlist not used
[15:03:36] /home/tvm/src/relay/transforms/let_list.h:54: Warning: letlist not used
[15:03:36] /home/tvm/src/relay/transforms/let_list.h:54: Warning: letlist not used
[15:03:44] /home/tvm/src/relay/transforms/let_list.h:54: Warning: letlist not used
[15:03:44] /home/tvm/src/relay/transforms/let_list.h:54: Warning: letlist not used
[15:03:44] /home/tvm/src/relay/transforms/let_list.h:54: Warning: letlist not used
[15:03:44] /home/tvm/src/relay/transforms/let_list.h:54: Warning: letlist not used
what’s difference between relay.build and vm.compile, are there some other compilers, how do I know which one I should choose ?
notes under Compile with Relay VM says “Currently only CPU target is supported”, so I can’t compile yoloV3 with other targets right ?
If your model contains dynamic shape or control flow, you need to use vm.compile. You can first try relay.build(...), and if you hit Check failed: (pval != nullptr) is false: Cannot allocate memory symbolic tensor shape [?] error, you can switch to vm.compile. We do have other compiler/runtime but you don’t need to worry about them.
You can ignore that sentence. It is specific to the model used in that tutorial and even that is outdated. GPU is fully supported by VM.
Thanks for your explanation, may I ask why vm.compile can deal with dynamic or control flow, I see the vm.compile code has lower the graph earlier than relay.build,
but it seems it doesn’t infer the right shape either. So I am curious the solution about vm.compile.
If I want to add a new backend, does it mean I need to deal with dynamic shape by myself when I choose vm.compile, I notice vm.compile has external compile interface.