We use auto schedule to turn our model on X84-64 CPU, which is saved as onnx-format and imported by relay.
When the model is FP32, every thing is fine.
But when the model was converted to INT8 by relay.quantize.qconfig,
we have received an error "Cannot find tuned schedules for target=llvm -keys=cpu -link-params=0 -mcpu=tigerlake".
It seems that the hash key of the task extracted by auto-scheduler is not the same as that of the task to compile.
We try to add disabled_pass={"AutoSchedulerLayoutRewrite"}
in model compilation as below,
> with auto_scheduler.ApplyHistoryBest(log_file):
> with tvm.transform.PassContext(
> opt_level=3,
> config={"relay.backend.use_auto_scheduler": True},
> disabled_pass={"AutoSchedulerLayoutRewrite"},
> ):
> lib = relay.build(mod, target=target, params=params)
It works, errors disappear, but the performance is poor.