From dcf551c0706c5bda4e74ffb89ebab0430421c0ab Mon Sep 17 00:00:00 2001 From: William Lian Date: Tue, 13 Oct 2020 16:54:20 +0800 Subject: [PATCH] insert cast of list output --- mindspore/ccsrc/pipeline/pynative/pynative_execute.cc | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/mindspore/ccsrc/pipeline/pynative/pynative_execute.cc b/mindspore/ccsrc/pipeline/pynative/pynative_execute.cc index 968d01301c..1da1395222 100644 --- a/mindspore/ccsrc/pipeline/pynative/pynative_execute.cc +++ b/mindspore/ccsrc/pipeline/pynative/pynative_execute.cc @@ -284,7 +284,7 @@ py::object DoParamMixPrecisionCastTuple(bool *is_cast, const py::tuple tuple) { if (py::isinstance(tuple[i])) { MS_LOG(DEBUG) << "call cast for item " << i; result[i] = DoParamMixPrecisionCast(is_cast, tuple[i]); - } else if (py::isinstance(tuple[i])) { + } else if (py::isinstance(tuple[i]) || py::isinstance(tuple[i])) { result[i] = DoParamMixPrecisionCastTuple(is_cast, tuple[i]); } else { result[i] = tuple[i]; @@ -779,7 +779,7 @@ AnfNodePtr PynativeExecutor::MakeCNode(const OpExecInfoPtr &op_exec_info, std::v } // redundant cast call if the tensor is a const Tensor. cast_output = DoParamMixPrecisionCast(&is_cast, obj); - } else if (py::isinstance(obj)) { + } else if (py::isinstance(obj) || py::isinstance(obj)) { // mix precision for tuple inputs cast_output = DoParamMixPrecisionCastTuple(&is_cast, obj); }