mbs-octoml commented on code in PR #11770:
URL: https://github.com/apache/tvm/pull/11770#discussion_r907636570


##########
python/tvm/relay/build_module.py:
##########
@@ -707,24 +708,24 @@ def create_executor(kind="debug", mod=None, device=None, 
target="llvm", params=N
     -------
     executor : :py:class:`~tvm.relay.backend.interpreter.Executor`
     """
+    raw_targets = Target.canon_multi_target(target)

Review Comment:
   As a rule it would be good to have an 'anything goes' API which supports all 
the legacy ways of conveying target/targets, an an internal 'canonical' API 
which assumes the most general form of Array<Target>. However I don't see how 
to enforce such a distinction given the chaotic layering. So as the next best 
thing I've made sure to canonicalize at all the right points, but 
canonicalization is idempotent.
   
   Meanwhile, I've reverted the changes to require raw_targets in canonical 
form in favor of the generic 'any multi-target like object' used elsewhere. 
I've then moved the assert into create_executor since the targets are already 
required to be in canonical form to manufacture the default device. 



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to