From e52c916f56b88ad4c0e9e4235b6dd58fc89eaf9c Mon Sep 17 00:00:00 2001 From: unknown Date: Thu, 8 Apr 2021 16:06:41 +0800 Subject: [PATCH] Don't reset -2 when there is aicore op. --- ge/generator/ge_generator.cc | 18 +++++++++++++++++- 1 file changed, 17 insertions(+), 1 deletion(-) diff --git a/ge/generator/ge_generator.cc b/ge/generator/ge_generator.cc index 61000519..4dff94c9 100644 --- a/ge/generator/ge_generator.cc +++ b/ge/generator/ge_generator.cc @@ -692,6 +692,22 @@ namespace { } return SUCCESS; } + + bool CheckNoAicore(const ComputeGraphPtr &graph) { + for (const auto &node : graph->GetDirectNode()) { + if (node == nullptr) { + continue; + } + auto op_desc = node->GetOpDesc(); + if (op_desc == nullptr) { + continue; + } + if (op_desc->GetOpEngineName() == kAIcoreEngine) { + return false; + } + } + return true; + } } void GeGenerator::RemoveConst(const vector &inputs, vector &outputs) { @@ -787,7 +803,7 @@ Status GeGenerator::BuildSingleOp(OpDescPtr &op_desc, const vector &in bool all_shape = false; (void)AttrUtils::GetBool(op_desc, kAicpuAllshape, all_shape); - if (all_shape) { + if (all_shape && CheckNoAicore(root_graph)) { GELOGD("Get aicpu all_shape kernel!"); vector inputs_dynamic; vector outputs_dynamic;