未验证 提交 863bb0d3 编写于 作者: O openharmony_ci 提交者: Gitee

!8624 北向用例新增对离线模型接口、错误码参数的实现

Merge pull request !8624 from scholar-lc/weekly_20230411
...@@ -206,6 +206,13 @@ int32_t MockIDevice::PrepareModel(const Model& model, const ModelConfig& config, ...@@ -206,6 +206,13 @@ int32_t MockIDevice::PrepareModel(const Model& model, const ModelConfig& config,
return HDF_SUCCESS; return HDF_SUCCESS;
} }
int32_t MockIDevice::PrepareOfflineModel(const std::vector<SharedBuffer>& offlineModels, const ModelConfig& config,
sptr<OHOS::HDI::Nnrt::V2_0::IPreparedModel>& preparedModel)
{
preparedModel = new (std::nothrow) V2_0::MockIPreparedModel();
return V2_0::NNRT_ReturnCode::NNRT_SUCCESS;
}
int32_t MockIDevice::PrepareModelFromModelCache(const std::vector<SharedBuffer>& modelCache, const ModelConfig& config, int32_t MockIDevice::PrepareModelFromModelCache(const std::vector<SharedBuffer>& modelCache, const ModelConfig& config,
sptr<IPreparedModel>& preparedModel) sptr<IPreparedModel>& preparedModel)
{ {
...@@ -251,10 +258,9 @@ int32_t MockIPreparedModel::GetVersion(uint32_t &majorVersion, uint32_t &minorVe ...@@ -251,10 +258,9 @@ int32_t MockIPreparedModel::GetVersion(uint32_t &majorVersion, uint32_t &minorVe
} }
int32_t MockIPreparedModel::Run(const std::vector<IOTensor>& inputs, const std::vector<IOTensor>& outputs, int32_t MockIPreparedModel::Run(const std::vector<IOTensor>& inputs, const std::vector<IOTensor>& outputs,
std::vector<std::vector<int32_t>>& outputsDims, std::vector<bool>& isOutputBufferEnough) std::vector<std::vector<int32_t>>& outputsDims)
{ {
outputsDims = {{1, 2, 2, 1}}; outputsDims = {{1, 2, 2, 1}};
isOutputBufferEnough = {true};
return HDF_SUCCESS; return HDF_SUCCESS;
} }
......
...@@ -70,6 +70,9 @@ public: ...@@ -70,6 +70,9 @@ public:
int32_t PrepareModel(const Model& model, const ModelConfig& config, sptr<IPreparedModel>& preparedModel) override; int32_t PrepareModel(const Model& model, const ModelConfig& config, sptr<IPreparedModel>& preparedModel) override;
int32_t PrepareOfflineModel(const std::vector<SharedBuffer>& offlineModels, const ModelConfig& config,
sptr<OHOS::HDI::Nnrt::V2_0::IPreparedModel>& preparedModel) override;
int32_t PrepareModelFromModelCache(const std::vector<SharedBuffer>& modelCache, const ModelConfig& config, int32_t PrepareModelFromModelCache(const std::vector<SharedBuffer>& modelCache, const ModelConfig& config,
sptr<IPreparedModel>& preparedModel) override; sptr<IPreparedModel>& preparedModel) override;
...@@ -108,7 +111,7 @@ class MockIPreparedModel : public IPreparedModel { ...@@ -108,7 +111,7 @@ class MockIPreparedModel : public IPreparedModel {
public: public:
int32_t ExportModelCache(std::vector<SharedBuffer>& modelCache) override; int32_t ExportModelCache(std::vector<SharedBuffer>& modelCache) override;
int32_t Run(const std::vector<IOTensor>& inputs, const std::vector<IOTensor>& outputs, int32_t Run(const std::vector<IOTensor>& inputs, const std::vector<IOTensor>& outputs,
std::vector<std::vector<int32_t>>& outputsDims, std::vector<bool>& isOutputBufferEnough) override; std::vector<std::vector<int32_t>>& outputsDims) override;
int32_t GetInputDimRanges(std::vector<std::vector<uint32_t>>& minInputDims, std::vector<std::vector<uint32_t>>& maxInputDims) override; int32_t GetInputDimRanges(std::vector<std::vector<uint32_t>>& minInputDims, std::vector<std::vector<uint32_t>>& maxInputDims) override;
int32_t GetVersion(uint32_t &majorVersion, uint32_t &minorVersion) override; int32_t GetVersion(uint32_t &majorVersion, uint32_t &minorVersion) override;
MockIPreparedModel() = default; MockIPreparedModel() = default;
......
...@@ -805,7 +805,7 @@ HWTEST_F(MemoryTest, SUB_AI_NNRt_Func_North_Executor_Memory_Run_0200, Function | ...@@ -805,7 +805,7 @@ HWTEST_F(MemoryTest, SUB_AI_NNRt_Func_North_Executor_Memory_Run_0200, Function |
OH_NNExecutor *executor = OH_NNExecutor_Construct(compilation); OH_NNExecutor *executor = OH_NNExecutor_Construct(compilation);
ASSERT_NE(nullptr, executor); ASSERT_NE(nullptr, executor);
uint32_t inputIndex = 0; uint32_t inputIndex = 0;
for (auto i = 0; i < graphArgs.operands.size(); i++) { for (size_t i = 0; i < graphArgs.operands.size(); i++) {
const OHNNOperandTest &operandTem = graphArgs.operands[i]; const OHNNOperandTest &operandTem = graphArgs.operands[i];
auto quantParam = operandTem.quantParam; auto quantParam = operandTem.quantParam;
OH_NN_Tensor operand = {operandTem.dataType, (uint32_t)operandTem.shape.size(), operandTem.shape.data(), OH_NN_Tensor operand = {operandTem.dataType, (uint32_t)operandTem.shape.size(), operandTem.shape.data(),
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册