Browse Source

!11170 fix CreateSession(const char *model_buf, size_t size, const lite::Context *context)

From: @hangangqiang
Reviewed-by: @zhang_xue_tong,@zhanghaibo5
Signed-off-by: @zhang_xue_tong
tags/v1.1.1
mindspore-ci-bot Gitee 5 years ago
parent
commit
bcfba4e64a
2 changed files with 5 additions and 1 deletions
  1. +2
    -1
      mindspore/lite/src/lite_session.cc
  2. +3
    -0
      mindspore/lite/src/lite_session.h

+ 2
- 1
mindspore/lite/src/lite_session.cc View File

@@ -547,6 +547,7 @@ LiteSession::~LiteSession() {
mindspore::lite::NPUPassManager::GetInstance()->Clear(); mindspore::lite::NPUPassManager::GetInstance()->Clear();
mindspore::lite::NPUManager::GetInstance()->Reset(); mindspore::lite::NPUManager::GetInstance()->Reset();
#endif #endif
delete (model_);
is_running_.store(false); is_running_.store(false);
} }


@@ -723,7 +724,7 @@ session::LiteSession *session::LiteSession::CreateSession(const char *model_buf,
return nullptr; return nullptr;
} }
model->buf = nullptr; model->buf = nullptr;
delete (model);
(reinterpret_cast<lite::LiteSession *>(session))->set_model(model);
return session; return session;
} }
} // namespace mindspore } // namespace mindspore

+ 3
- 0
mindspore/lite/src/lite_session.h View File

@@ -66,6 +66,8 @@ class LiteSession : public session::LiteSession {
int Resize(const std::vector<mindspore::tensor::MSTensor *> &inputs, int Resize(const std::vector<mindspore::tensor::MSTensor *> &inputs,
const std::vector<std::vector<int>> &dims) override; const std::vector<std::vector<int>> &dims) override;


void set_model(Model *model) { this->model_ = model; }

protected: protected:
static void ConvertTensorsQuantParam(const schema::Tensor *src_tensor, lite::Tensor *dst_tensor); static void ConvertTensorsQuantParam(const schema::Tensor *src_tensor, lite::Tensor *dst_tensor);


@@ -123,6 +125,7 @@ class LiteSession : public session::LiteSession {
// graph output tensor name -- output tensor // graph output tensor name -- output tensor
std::unordered_map<std::string, mindspore::tensor::MSTensor *> output_tensor_map_; std::unordered_map<std::string, mindspore::tensor::MSTensor *> output_tensor_map_;
Executor *executor_ = nullptr; Executor *executor_ = nullptr;
Model *model_ = nullptr;
std::atomic<bool> is_running_ = false; std::atomic<bool> is_running_ = false;
#if SUPPORT_GPU && !SUPPORT_TRAIN #if SUPPORT_GPU && !SUPPORT_TRAIN
opencl::OpenCLRuntimeWrapper ocl_runtime_wrap_; opencl::OpenCLRuntimeWrapper ocl_runtime_wrap_;


Loading…
Cancel
Save