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) {