MCPcopy Create free account
hub / github.com/MegEngine/MegEngine / _process_outputs

Method _process_outputs

imperative/python/megengine/jit/tracing.py:730–754  ·  view source on GitHub ↗
(self, outputs)

Source from the content-addressed store, hash-verified

728 }
729
730 def _process_outputs(self, outputs):
731 assert (
732 isinstance(outputs, RawTensor)
733 or (
734 isinstance(outputs, Sequence) and not (isinstance(outputs[0], Sequence))
735 )
736 or isinstance(outputs, collections.abc.Mapping)
737 ), "Unsupport outputs type, should be Tensor, List[Tensor] or Dict[tensor_name, Tensor]"
738 if isinstance(outputs, RawTensor):
739 outputs = [outputs]
740 if not isinstance(outputs, Sequence):
741 outputs = [outputs]
742 if isinstance(outputs, collections.abc.Mapping):
743 output_names, outputs = zip(*sorted(outputs.items()))
744 else:
745 # output_names = ["output_{}".format(i) for i in range(len(outputs))]
746 output_names = None
747 self._output_names = output_names
748 for i, output in enumerate(outputs):
749 assert isinstance(
750 output, RawTensor
751 ), "Only support return tensors when capture_as_const is enabled"
752 name_tensor("output_{}".format(i), output)
753 if self._output_bindings is None:
754 self._output_bindings = ["output_{}".format(i) for i in range(len(outputs))]
755
756 def _begin_excluded_region(self):
757 self._trace.begin_excluded_region()

Callers 3

trace_normalMethod · 0.95
trace_without_hostMethod · 0.95

Calls 2

itemsMethod · 0.80
formatMethod · 0.45

Tested by

no test coverage detected