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]