From 40693988d8d2fc8e0f9c3a399ef3ba4d88fb6c43 Mon Sep 17 00:00:00 2001 From: lichun Date: Wed, 12 May 2021 11:51:36 +0800 Subject: [PATCH 01/14] support fwk offline inference when ge_lib is not initialized --- ge/hybrid/node_executor/aicore/aicore_node_executor.cc | 3 --- ge/hybrid/node_executor/aicore/aicore_task_compiler.cc | 15 +++++++++++++++ ge/hybrid/node_executor/aicore/aicore_task_compiler.h | 2 ++ 3 files changed, 17 insertions(+), 3 deletions(-) diff --git a/ge/hybrid/node_executor/aicore/aicore_node_executor.cc b/ge/hybrid/node_executor/aicore/aicore_node_executor.cc index 29ae831c..7ebb9e39 100755 --- a/ge/hybrid/node_executor/aicore/aicore_node_executor.cc +++ b/ge/hybrid/node_executor/aicore/aicore_node_executor.cc @@ -41,9 +41,6 @@ AiCoreNodeTask::AiCoreNodeTask(std::vector> &&task Status AiCoreNodeExecutor::Initialize() { compiler_ = TaskCompilerFactory::GetInstance().GetTaskCompiler(); - if (compiler_ != nullptr) { - GE_CHK_STATUS_RET(compiler_->Initialize(), "[Init][TaskCompiler] failed."); - } return SUCCESS; } diff --git a/ge/hybrid/node_executor/aicore/aicore_task_compiler.cc b/ge/hybrid/node_executor/aicore/aicore_task_compiler.cc index 742b3ca2..4eaf6bb5 100755 --- a/ge/hybrid/node_executor/aicore/aicore_task_compiler.cc +++ b/ge/hybrid/node_executor/aicore/aicore_task_compiler.cc @@ -29,6 +29,7 @@ uint64_t kFakeSize = 0x10000000UL; REGISTER_TASK_COMPILER(AiCoreTaskCompiler); } std::mutex AiCoreTaskCompiler::mu_; +std::mutex AiCoreTaskCompiler::init_mu_; Status AiCoreTaskCompiler::Initialize() { auto ge_lib = GELib::GetInstance(); @@ -41,6 +42,10 @@ Status AiCoreTaskCompiler::Initialize() { auto &kernel_manager = ge_lib->OpsKernelManagerObj(); aic_kernel_store_ = kernel_manager.GetOpsKernelInfoStore("AIcoreEngine"); GE_CHECK_NOTNULL(aic_kernel_store_); + std::lock_guard lk(init_mu_); + { + is_initialized_ = true; + } return SUCCESS; } @@ -57,6 +62,16 @@ Status AiCoreTaskCompiler::DoCompileOp(const NodePtr &node) const { } Status AiCoreTaskCompiler::CompileOp(const NodePtr &node, std::vector &tasks) { + if (!is_initialized_) { + Status ret; + ret = Initialize(); + if (ret != SUCCESS) { + GELOGE(FAILED, "[Check][State][%s] Offline inference not support online compile.", ori_node_name.c_str()); + REPORT_INNER_ERROR("E19999", "[%s] Offline inference not support online compile.", ori_node_name.c_str()); + return ret; + } + } + GE_CHECK_NOTNULL(node); GELOGI("AiCoreTaskCompiler(%s) CompileOp Start.", node->GetName().c_str()); diff --git a/ge/hybrid/node_executor/aicore/aicore_task_compiler.h b/ge/hybrid/node_executor/aicore/aicore_task_compiler.h index b6dfd82b..eecbe834 100755 --- a/ge/hybrid/node_executor/aicore/aicore_task_compiler.h +++ b/ge/hybrid/node_executor/aicore/aicore_task_compiler.h @@ -34,7 +34,9 @@ class AiCoreTaskCompiler : public TaskCompiler { Status DoCompileOp(const NodePtr &node) const; Status DoGenerateTask(const Node &node, std::vector &tasks); OpsKernelInfoStorePtr aic_kernel_store_; + bool is_initialized_ = false; static std::mutex mu_; + static std::mutex init_mu_; }; } // namespace hybrid } // namespace ge From 9f29eb2cf7925f1c19098a21709cb9d5fcb47953 Mon Sep 17 00:00:00 2001 From: lichun Date: Wed, 12 May 2021 12:55:20 +0800 Subject: [PATCH 02/14] support fwk offline inference when ge_lib is not initialized --- ge/hybrid/node_executor/aicore/aicore_task_compiler.cc | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/ge/hybrid/node_executor/aicore/aicore_task_compiler.cc b/ge/hybrid/node_executor/aicore/aicore_task_compiler.cc index 4eaf6bb5..2d206f10 100755 --- a/ge/hybrid/node_executor/aicore/aicore_task_compiler.cc +++ b/ge/hybrid/node_executor/aicore/aicore_task_compiler.cc @@ -66,8 +66,8 @@ Status AiCoreTaskCompiler::CompileOp(const NodePtr &node, std::vectorGetName().c_str()); + REPORT_INNER_ERROR("E19999", "[%s] Offline inference not support online compile.", node->GetName()..c_str()); return ret; } } From c144829c7873883ec477745ce1511043aecb2e19 Mon Sep 17 00:00:00 2001 From: lichun Date: Wed, 12 May 2021 13:03:51 +0800 Subject: [PATCH 03/14] support fwk offline inference when ge_lib is not initialized --- ge/hybrid/node_executor/aicore/aicore_task_compiler.cc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ge/hybrid/node_executor/aicore/aicore_task_compiler.cc b/ge/hybrid/node_executor/aicore/aicore_task_compiler.cc index 2d206f10..e3836e55 100755 --- a/ge/hybrid/node_executor/aicore/aicore_task_compiler.cc +++ b/ge/hybrid/node_executor/aicore/aicore_task_compiler.cc @@ -67,7 +67,7 @@ Status AiCoreTaskCompiler::CompileOp(const NodePtr &node, std::vectorGetName().c_str()); - REPORT_INNER_ERROR("E19999", "[%s] Offline inference not support online compile.", node->GetName()..c_str()); + REPORT_INNER_ERROR("E19999", "[%s] Offline inference not support online compile.", node->GetName().c_str()); return ret; } } From 12d963273e3867b1bc585491c6dccec846f429fb Mon Sep 17 00:00:00 2001 From: lichun Date: Wed, 12 May 2021 16:12:11 +0800 Subject: [PATCH 04/14] support fwk offline inference when ge_lib is not initialized --- .../node_executor/aicore/aicore_task_compiler.cc | 23 +++++++++++----------- .../node_executor/aicore/aicore_task_compiler.h | 3 +-- 2 files changed, 12 insertions(+), 14 deletions(-) diff --git a/ge/hybrid/node_executor/aicore/aicore_task_compiler.cc b/ge/hybrid/node_executor/aicore/aicore_task_compiler.cc index e3836e55..a5964cd9 100755 --- a/ge/hybrid/node_executor/aicore/aicore_task_compiler.cc +++ b/ge/hybrid/node_executor/aicore/aicore_task_compiler.cc @@ -32,6 +32,11 @@ std::mutex AiCoreTaskCompiler::mu_; std::mutex AiCoreTaskCompiler::init_mu_; Status AiCoreTaskCompiler::Initialize() { + std::lock_guard lk(mu_); + if (is_initialized_) { + return SUCCESS; + } + auto ge_lib = GELib::GetInstance(); GE_CHECK_NOTNULL(ge_lib); if (!ge_lib->InitFlag()) { @@ -42,10 +47,7 @@ Status AiCoreTaskCompiler::Initialize() { auto &kernel_manager = ge_lib->OpsKernelManagerObj(); aic_kernel_store_ = kernel_manager.GetOpsKernelInfoStore("AIcoreEngine"); GE_CHECK_NOTNULL(aic_kernel_store_); - std::lock_guard lk(init_mu_); - { - is_initialized_ = true; - } + is_initialized_ = true; return SUCCESS; } @@ -62,14 +64,11 @@ Status AiCoreTaskCompiler::DoCompileOp(const NodePtr &node) const { } Status AiCoreTaskCompiler::CompileOp(const NodePtr &node, std::vector &tasks) { - if (!is_initialized_) { - Status ret; - ret = Initialize(); - if (ret != SUCCESS) { - GELOGE(FAILED, "[Check][State][%s] Offline inference not support online compile.", node->GetName().c_str()); - REPORT_INNER_ERROR("E19999", "[%s] Offline inference not support online compile.", node->GetName().c_str()); - return ret; - } + Status ret = Initialize(); + if (ret != SUCCESS) { + GELOGE(FAILED, "[Check][State][%s] Offline inference not support online compile.", node->GetName().c_str()); + REPORT_INNER_ERROR("E19999", "[%s] Offline inference not support online compile.", node->GetName().c_str()); + return ret; } GE_CHECK_NOTNULL(node); diff --git a/ge/hybrid/node_executor/aicore/aicore_task_compiler.h b/ge/hybrid/node_executor/aicore/aicore_task_compiler.h index eecbe834..04976be3 100755 --- a/ge/hybrid/node_executor/aicore/aicore_task_compiler.h +++ b/ge/hybrid/node_executor/aicore/aicore_task_compiler.h @@ -34,9 +34,8 @@ class AiCoreTaskCompiler : public TaskCompiler { Status DoCompileOp(const NodePtr &node) const; Status DoGenerateTask(const Node &node, std::vector &tasks); OpsKernelInfoStorePtr aic_kernel_store_; - bool is_initialized_ = false; + atomic_bool is_initialized_ = false; static std::mutex mu_; - static std::mutex init_mu_; }; } // namespace hybrid } // namespace ge From 4b104afb0628072f81b2664ded23cd37b5071259 Mon Sep 17 00:00:00 2001 From: lichun Date: Wed, 12 May 2021 16:14:03 +0800 Subject: [PATCH 05/14] support fwk offline inference when ge_lib is not initialized --- ge/hybrid/node_executor/aicore/aicore_task_compiler.cc | 1 - 1 file changed, 1 deletion(-) diff --git a/ge/hybrid/node_executor/aicore/aicore_task_compiler.cc b/ge/hybrid/node_executor/aicore/aicore_task_compiler.cc index a5964cd9..0cdea5d5 100755 --- a/ge/hybrid/node_executor/aicore/aicore_task_compiler.cc +++ b/ge/hybrid/node_executor/aicore/aicore_task_compiler.cc @@ -29,7 +29,6 @@ uint64_t kFakeSize = 0x10000000UL; REGISTER_TASK_COMPILER(AiCoreTaskCompiler); } std::mutex AiCoreTaskCompiler::mu_; -std::mutex AiCoreTaskCompiler::init_mu_; Status AiCoreTaskCompiler::Initialize() { std::lock_guard lk(mu_); From ac62f5d2ce90ae4a00f5f285a000ea95e9cf2ab1 Mon Sep 17 00:00:00 2001 From: lichun Date: Wed, 12 May 2021 17:24:03 +0800 Subject: [PATCH 06/14] support fwk offline inference when ge_lib is not initialized --- tests/ut/ge/CMakeLists.txt | 1 + .../aicore/aicore_task_compiler_unittest.cc | 55 ++++++++++++++++++++++ 2 files changed, 56 insertions(+) create mode 100644 tests/ut/ge/hybrid/node_executor/aicore/aicore_task_compiler_unittest.cc diff --git a/tests/ut/ge/CMakeLists.txt b/tests/ut/ge/CMakeLists.txt index 7cdec968..16e30c94 100755 --- a/tests/ut/ge/CMakeLists.txt +++ b/tests/ut/ge/CMakeLists.txt @@ -828,6 +828,7 @@ set(HYBRID_TEST_FILES "hybrid/executor/worker/execution_engine_unittest.cc" "hybrid/model/hybrid_model_builder_unittest.cc" "hybrid/node_executor/rts/rts_node_task_unittest.cc" + "hybrid/node_executor/aicore/aicore_task_compiler_unittest.cc" ) set(OTHERS_TEST_FILES diff --git a/tests/ut/ge/hybrid/node_executor/aicore/aicore_task_compiler_unittest.cc b/tests/ut/ge/hybrid/node_executor/aicore/aicore_task_compiler_unittest.cc new file mode 100644 index 00000000..a33b3675 --- /dev/null +++ b/tests/ut/ge/hybrid/node_executor/aicore/aicore_task_compiler_unittest.cc @@ -0,0 +1,55 @@ +/** + * Copyright 2021-2021 Huawei Technologies Co., Ltd + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#include +#include +#include + +#define private public +#define protected public +#include "init/gelib.h" +#include "hybrid/node_executor/aicore/aicore_task_compiler.h" + +using namespace std; +using namespace testing; + +namespace ge { +using namespace hybrid; + +class UtestAiCoreTaskCompiler : public testing::Test { +protected: + void SetUp() {} + void TearDown() { } +}; + +TEST_F(UtestAiCoreTaskCompiler, test_aicore_task_compiler_init) { + AicoreTaskCompiler aicore_task_compiler; + NodePtr node = nullptr; + std::vector tasks{}; + ASSERT_EQ(aicore_task_compiler.Initialize(), FAILED); // cause: ge lib is nullptr + ASSERT_EQ(aicore_task_compiler.CompileOp(node, tasks), FAILED); // cause: aicore task compiler init failed. + + std::shared_ptr ge_lib_ptr = MakeShared(); + ge_lib_ptr->init_flag_ = true; + OpsKernelManager OpsKernelManagerObj; + OpsKernelInfoStorePtr ops_kernel_info_store = MakeShared(new OpsKernelInfoStore()); + OpsKernelManagerObj.ops_kernel_store_.insert("AIcoreEngine", ops_kernel_info_store); + ASSERT_EQ(aicore_task_compiler.CompileOp(node, tasks), FAILED); // cause: node is nullptr + ASSERT_EQ(aicore_task_compiler.is_initialized_, true); // though CompileOp failed since node is nullptr, + // but aicore_task_compiler init success. +} +} // namespace ge + From 4783ab820bed4b5f2587e870889b2197ff202777 Mon Sep 17 00:00:00 2001 From: lichun Date: Wed, 12 May 2021 17:26:06 +0800 Subject: [PATCH 07/14] support fwk offline inference when ge_lib is not initialized --- ge/hybrid/node_executor/aicore/aicore_task_compiler.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ge/hybrid/node_executor/aicore/aicore_task_compiler.h b/ge/hybrid/node_executor/aicore/aicore_task_compiler.h index 04976be3..15e8ef1c 100755 --- a/ge/hybrid/node_executor/aicore/aicore_task_compiler.h +++ b/ge/hybrid/node_executor/aicore/aicore_task_compiler.h @@ -34,7 +34,7 @@ class AiCoreTaskCompiler : public TaskCompiler { Status DoCompileOp(const NodePtr &node) const; Status DoGenerateTask(const Node &node, std::vector &tasks); OpsKernelInfoStorePtr aic_kernel_store_; - atomic_bool is_initialized_ = false; + std::atomic_bool is_initialized_ = false; static std::mutex mu_; }; } // namespace hybrid From 4164c3356076f716a36f4c8cedd4abe9c00b27a6 Mon Sep 17 00:00:00 2001 From: lichun Date: Wed, 12 May 2021 17:30:16 +0800 Subject: [PATCH 08/14] support fwk offline inference when ge_lib is not initialized --- ge/hybrid/node_executor/aicore/aicore_task_compiler.h | 1 + 1 file changed, 1 insertion(+) diff --git a/ge/hybrid/node_executor/aicore/aicore_task_compiler.h b/ge/hybrid/node_executor/aicore/aicore_task_compiler.h index 15e8ef1c..4fe2cdc5 100755 --- a/ge/hybrid/node_executor/aicore/aicore_task_compiler.h +++ b/ge/hybrid/node_executor/aicore/aicore_task_compiler.h @@ -18,6 +18,7 @@ #define GE_HYBRID_KERNEL_AICORE_TASK_COMPILER_H_ #include +#include #include "opskernel_manager/ops_kernel_manager.h" #include "aicore_node_executor.h" From a11c6d1066c1d520c7460122f00779f6e02742ea Mon Sep 17 00:00:00 2001 From: lichun Date: Wed, 12 May 2021 17:33:15 +0800 Subject: [PATCH 09/14] support fwk offline inference when ge_lib is not initialized --- ge/hybrid/node_executor/aicore/aicore_task_compiler.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ge/hybrid/node_executor/aicore/aicore_task_compiler.h b/ge/hybrid/node_executor/aicore/aicore_task_compiler.h index 4fe2cdc5..cc733e99 100755 --- a/ge/hybrid/node_executor/aicore/aicore_task_compiler.h +++ b/ge/hybrid/node_executor/aicore/aicore_task_compiler.h @@ -35,7 +35,7 @@ class AiCoreTaskCompiler : public TaskCompiler { Status DoCompileOp(const NodePtr &node) const; Status DoGenerateTask(const Node &node, std::vector &tasks); OpsKernelInfoStorePtr aic_kernel_store_; - std::atomic_bool is_initialized_ = false; + std::atomic_bool is_initialized_{false}; static std::mutex mu_; }; } // namespace hybrid From fd2c95a49309166d9d7f2a17d031151eb258551a Mon Sep 17 00:00:00 2001 From: lichun Date: Wed, 12 May 2021 17:53:52 +0800 Subject: [PATCH 10/14] support fwk offline inference when ge_lib is not initialized --- .../hybrid/node_executor/aicore/aicore_task_compiler_unittest.cc | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/tests/ut/ge/hybrid/node_executor/aicore/aicore_task_compiler_unittest.cc b/tests/ut/ge/hybrid/node_executor/aicore/aicore_task_compiler_unittest.cc index a33b3675..249ae076 100644 --- a/tests/ut/ge/hybrid/node_executor/aicore/aicore_task_compiler_unittest.cc +++ b/tests/ut/ge/hybrid/node_executor/aicore/aicore_task_compiler_unittest.cc @@ -39,16 +39,16 @@ TEST_F(UtestAiCoreTaskCompiler, test_aicore_task_compiler_init) { AicoreTaskCompiler aicore_task_compiler; NodePtr node = nullptr; std::vector tasks{}; - ASSERT_EQ(aicore_task_compiler.Initialize(), FAILED); // cause: ge lib is nullptr - ASSERT_EQ(aicore_task_compiler.CompileOp(node, tasks), FAILED); // cause: aicore task compiler init failed. + EXPECT_EQ(aicore_task_compiler.Initialize(), FAILED); // cause: ge lib is nullptr + EXPECT_EQ(aicore_task_compiler.CompileOp(node, tasks), FAILED); // cause: aicore task compiler init failed. std::shared_ptr ge_lib_ptr = MakeShared(); ge_lib_ptr->init_flag_ = true; OpsKernelManager OpsKernelManagerObj; OpsKernelInfoStorePtr ops_kernel_info_store = MakeShared(new OpsKernelInfoStore()); OpsKernelManagerObj.ops_kernel_store_.insert("AIcoreEngine", ops_kernel_info_store); - ASSERT_EQ(aicore_task_compiler.CompileOp(node, tasks), FAILED); // cause: node is nullptr - ASSERT_EQ(aicore_task_compiler.is_initialized_, true); // though CompileOp failed since node is nullptr, + EXPECT_EQ(aicore_task_compiler.CompileOp(node, tasks), FAILED); // cause: node is nullptr + EXPECT_EQ(aicore_task_compiler.is_initialized_, true); // though CompileOp failed since node is nullptr, // but aicore_task_compiler init success. } } // namespace ge From 40acfc4b672c821f978092248482682613854032 Mon Sep 17 00:00:00 2001 From: lichun Date: Wed, 12 May 2021 18:02:43 +0800 Subject: [PATCH 11/14] support fwk offline inference when ge_lib is not initialized --- .../ut/ge/hybrid/node_executor/aicore/aicore_task_compiler_unittest.cc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/ut/ge/hybrid/node_executor/aicore/aicore_task_compiler_unittest.cc b/tests/ut/ge/hybrid/node_executor/aicore/aicore_task_compiler_unittest.cc index 249ae076..7ab6bd8d 100644 --- a/tests/ut/ge/hybrid/node_executor/aicore/aicore_task_compiler_unittest.cc +++ b/tests/ut/ge/hybrid/node_executor/aicore/aicore_task_compiler_unittest.cc @@ -32,7 +32,7 @@ using namespace hybrid; class UtestAiCoreTaskCompiler : public testing::Test { protected: void SetUp() {} - void TearDown() { } + void TearDown() {} }; TEST_F(UtestAiCoreTaskCompiler, test_aicore_task_compiler_init) { From e8513b250b0a9d03f7da712ca31930917bc6c87f Mon Sep 17 00:00:00 2001 From: lichun Date: Wed, 12 May 2021 18:09:58 +0800 Subject: [PATCH 12/14] support fwk offline inference when ge_lib is not initialized --- .../ut/ge/hybrid/node_executor/aicore/aicore_task_compiler_unittest.cc | 2 ++ 1 file changed, 2 insertions(+) diff --git a/tests/ut/ge/hybrid/node_executor/aicore/aicore_task_compiler_unittest.cc b/tests/ut/ge/hybrid/node_executor/aicore/aicore_task_compiler_unittest.cc index 7ab6bd8d..52a1339a 100644 --- a/tests/ut/ge/hybrid/node_executor/aicore/aicore_task_compiler_unittest.cc +++ b/tests/ut/ge/hybrid/node_executor/aicore/aicore_task_compiler_unittest.cc @@ -22,6 +22,8 @@ #define protected public #include "init/gelib.h" #include "hybrid/node_executor/aicore/aicore_task_compiler.h" +#undef private +#undef protected using namespace std; using namespace testing; From d54eb808dbb90cc8bc24604159196d068fb6f21b Mon Sep 17 00:00:00 2001 From: lichun Date: Wed, 12 May 2021 18:14:42 +0800 Subject: [PATCH 13/14] support fwk offline inference when ge_lib is not initialized --- .../ut/ge/hybrid/node_executor/aicore/aicore_task_compiler_unittest.cc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/ut/ge/hybrid/node_executor/aicore/aicore_task_compiler_unittest.cc b/tests/ut/ge/hybrid/node_executor/aicore/aicore_task_compiler_unittest.cc index 52a1339a..36712b38 100644 --- a/tests/ut/ge/hybrid/node_executor/aicore/aicore_task_compiler_unittest.cc +++ b/tests/ut/ge/hybrid/node_executor/aicore/aicore_task_compiler_unittest.cc @@ -38,7 +38,7 @@ protected: }; TEST_F(UtestAiCoreTaskCompiler, test_aicore_task_compiler_init) { - AicoreTaskCompiler aicore_task_compiler; + ge::hbyrid::AicoreTaskCompiler aicore_task_compiler; NodePtr node = nullptr; std::vector tasks{}; EXPECT_EQ(aicore_task_compiler.Initialize(), FAILED); // cause: ge lib is nullptr From 284f5226b7356eb7cc4d7d0333145e2836e77ac5 Mon Sep 17 00:00:00 2001 From: lichun Date: Wed, 12 May 2021 18:17:12 +0800 Subject: [PATCH 14/14] support fwk offline inference when ge_lib is not initialized --- .../ut/ge/hybrid/node_executor/aicore/aicore_task_compiler_unittest.cc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/ut/ge/hybrid/node_executor/aicore/aicore_task_compiler_unittest.cc b/tests/ut/ge/hybrid/node_executor/aicore/aicore_task_compiler_unittest.cc index 36712b38..c43c19c0 100644 --- a/tests/ut/ge/hybrid/node_executor/aicore/aicore_task_compiler_unittest.cc +++ b/tests/ut/ge/hybrid/node_executor/aicore/aicore_task_compiler_unittest.cc @@ -38,7 +38,7 @@ protected: }; TEST_F(UtestAiCoreTaskCompiler, test_aicore_task_compiler_init) { - ge::hbyrid::AicoreTaskCompiler aicore_task_compiler; + ge::hybrid::AicoreTaskCompiler aicore_task_compiler; NodePtr node = nullptr; std::vector tasks{}; EXPECT_EQ(aicore_task_compiler.Initialize(), FAILED); // cause: ge lib is nullptr