From cd5a54cd75057dfa4877005e0cee513c1b628e06 Mon Sep 17 00:00:00 2001 From: Zheng-Bicheng <58363586+Zheng-Bicheng@users.noreply.github.com> Date: Tue, 14 Feb 2023 15:40:15 +0800 Subject: [PATCH] [Bug Fix] Fix the bug reported by RK3568 Runtime under the latest driver (#1311) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * 更新rkyolo runtime 在rk3568最新驱动下报错的问题 * 删除debug代码 --- fastdeploy/runtime/backends/rknpu2/rknpu2_backend.cc | 3 ++- fastdeploy/runtime/backends/rknpu2/rknpu2_backend.h | 4 ++-- fastdeploy/runtime/runtime_option.h | 4 ++-- 3 files changed, 6 insertions(+), 5 deletions(-) diff --git a/fastdeploy/runtime/backends/rknpu2/rknpu2_backend.cc b/fastdeploy/runtime/backends/rknpu2/rknpu2_backend.cc index dc7bbbad5..a6b9a386f 100644 --- a/fastdeploy/runtime/backends/rknpu2/rknpu2_backend.cc +++ b/fastdeploy/runtime/backends/rknpu2/rknpu2_backend.cc @@ -67,6 +67,7 @@ bool RKNPU2Backend::GetSDKAndDeviceVersion() { ***************************************************************/ void RKNPU2Backend::BuildOption(const RKNPU2BackendOption& option) { this->option_ = option; + // save cpu_name this->option_.cpu_name = option.cpu_name; @@ -123,7 +124,7 @@ bool RKNPU2Backend::InitFromRKNN(const std::string& model_file, * @return bool * @note Only support RK3588 ***************************************************************/ -bool RKNPU2Backend::SetCoreMask(rknpu2::CoreMask& core_mask) const { +bool RKNPU2Backend::SetCoreMask(const rknpu2::CoreMask& core_mask) { int ret = rknn_set_core_mask(ctx, static_cast(core_mask)); if (ret != RKNN_SUCC) { FDERROR << "rknn_set_core_mask fail! ret=" << ret << std::endl; diff --git a/fastdeploy/runtime/backends/rknpu2/rknpu2_backend.h b/fastdeploy/runtime/backends/rknpu2/rknpu2_backend.h index 8b3aa9fe2..52f174d6d 100644 --- a/fastdeploy/runtime/backends/rknpu2/rknpu2_backend.h +++ b/fastdeploy/runtime/backends/rknpu2/rknpu2_backend.h @@ -25,7 +25,7 @@ namespace fastdeploy { struct RKNPU2BackendOption { - rknpu2::CpuName cpu_name = rknpu2::CpuName::RK3588; + rknpu2::CpuName cpu_name = rknpu2::CpuName::RK356X; // The specification of NPU core setting.It has the following choices : // RKNN_NPU_CORE_AUTO : Referring to automatic mode, meaning that it will @@ -49,7 +49,7 @@ class RKNPU2Backend : public BaseBackend { bool GetSDKAndDeviceVersion(); - bool SetCoreMask(rknpu2::CoreMask& core_mask) const; + bool SetCoreMask(const rknpu2::CoreMask& core_mask); bool GetModelInputOutputInfos(); diff --git a/fastdeploy/runtime/runtime_option.h b/fastdeploy/runtime/runtime_option.h index a36ac5459..904640eab 100755 --- a/fastdeploy/runtime/runtime_option.h +++ b/fastdeploy/runtime/runtime_option.h @@ -71,9 +71,9 @@ struct FASTDEPLOY_DECL RuntimeOption { void UseGpu(int gpu_id = 0); /// Use RKNPU2 e.g RK3588/RK356X to inference void UseRKNPU2(fastdeploy::rknpu2::CpuName rknpu2_name = - fastdeploy::rknpu2::CpuName::RK3588, + fastdeploy::rknpu2::CpuName::RK356X, fastdeploy::rknpu2::CoreMask rknpu2_core = - fastdeploy::rknpu2::CoreMask::RKNN_NPU_CORE_0); + fastdeploy::rknpu2::CoreMask::RKNN_NPU_CORE_AUTO); /// Use TimVX e.g RV1126/A311D to inference void UseTimVX(); /// Use Huawei Ascend to inference