From a080d565f312a1cb056d12725ee5c21c9010fd20 Mon Sep 17 00:00:00 2001 From: tanghuikang Date: Mon, 8 Mar 2021 16:15:10 +0800 Subject: [PATCH] Enable dynamic shape when RunOpsInGraph --- mindspore/ccsrc/backend/session/ascend_session.cc | 4 ++++ mindspore/ccsrc/backend/session/session_basic.cc | 11 +++++++++-- 2 files changed, 13 insertions(+), 2 deletions(-) diff --git a/mindspore/ccsrc/backend/session/ascend_session.cc b/mindspore/ccsrc/backend/session/ascend_session.cc index e03200abf9..ae464c0a57 100644 --- a/mindspore/ccsrc/backend/session/ascend_session.cc +++ b/mindspore/ccsrc/backend/session/ascend_session.cc @@ -735,6 +735,10 @@ void AscendSession::BuildOpsInGraph(const GraphId &graph_id, const std::mapprimitive = primitive; run_info->op_name = primitive->name(); - if (cnode->abstract() == nullptr) { + const auto &abstract = cnode->abstract(); + if (abstract == nullptr) { MS_LOG(EXCEPTION) << "Abstract is nullptr, node = " << cnode->DebugString(); } - run_info->abstract = cnode->abstract(); + run_info->abstract = abstract; + const auto &shape = abstract->BuildShape(); + MS_EXCEPTION_IF_NULL(shape); + const auto &shape_info = shape->ToString(); + if (shape_info.find("-1") != string::npos) { + run_info->is_dynamic_shape = true; + } } TensorPtr SessionBasic::GetValueNodeOutputTensor(const AnfNodePtr &node, size_t output_index) {