Browse Source

Detach MemManager from VarManager

pull/2040/head
zhangxiaokun 3 years ago
parent
commit
67a2ca609f
5 changed files with 11 additions and 4 deletions
  1. +6
    -2
      ge/graph/execute/model_executor.cc
  2. +2
    -0
      ge/graph/load/model_manager/davinci_model.cc
  3. +2
    -0
      ge/graph/passes/dimension_adjust_pass.cc
  4. +0
    -2
      ge/graph/passes/dimension_adjust_pass.h
  5. +1
    -0
      ge/hybrid/model/hybrid_model_builder.cc

+ 6
- 2
ge/graph/execute/model_executor.cc View File

@@ -42,6 +42,12 @@ namespace ge {
/// @return Status result of function
///
Status ModelExecutor::Initialize(const map<string, string> &options, uint64_t session_id) {
if (init_flag_) {
GELOGW("ModelExecutor has already initialized.");
return SUCCESS;
}

session_id_ = session_id;
graph_run_listener_ = MakeShared<GraphModelListener>(sync_run_mutex_, condition_);
if (graph_run_listener_ == nullptr) {
REPORT_CALL_ERROR("E19999", "New GraphModelListener fail");
@@ -66,7 +72,6 @@ Status ModelExecutor::Initialize(const map<string, string> &options, uint64_t se
return status;
}

VarManager::Instance(session_id)->SetMemManager(&MemManager::Instance());
size_t total_mem_size = 0;
GE_CHK_STATUS_RET_NOLOG(GetTotalMemorySize(total_mem_size));
status = VarManager::Instance(session_id)->SetMemoryMallocSize(options, total_mem_size);
@@ -76,7 +81,6 @@ Status ModelExecutor::Initialize(const map<string, string> &options, uint64_t se
return status;
}

session_id_ = session_id;
train_graph_flag_ = ParseTrainGraphFlag();
thread_run_flag_.store(true);
run_thread_ = std::thread(&ModelExecutor::RunThread, this);


+ 2
- 0
ge/graph/load/model_manager/davinci_model.cc View File

@@ -494,6 +494,8 @@ void DavinciModel::InitRuntimeParams() {

ret = ge::AttrUtils::GetInt(ge_model_, ATTR_MODEL_ZERO_COPY_MEMORY_SIZE, value);
runtime_param_.zero_copy_size = ret ? value : 0;

VarManager::Instance(session_id_)->SetMemManager(&MemManager::Instance());
GELOGI("InitRuntimeParams(), %s.", runtime_param_.ToString().c_str());
}



+ 2
- 0
ge/graph/passes/dimension_adjust_pass.cc View File

@@ -20,6 +20,8 @@
#include <string>
#include <vector>
#include "graph/utils/node_utils.h"
#include "inc/kernel.h"
#include "inc/kernel_factory.h"

namespace ge {
namespace {


+ 0
- 2
ge/graph/passes/dimension_adjust_pass.h View File

@@ -26,8 +26,6 @@
#include "graph/utils/attr_utils.h"
#include "graph/utils/graph_utils.h"
#include "graph/utils/op_desc_utils.h"
#include "inc/kernel.h"
#include "inc/kernel_factory.h"
#include "graph/passes/pass_utils.h"

namespace ge {


+ 1
- 0
ge/hybrid/model/hybrid_model_builder.cc View File

@@ -1537,6 +1537,7 @@ Status HybridModelBuilder::InitRuntimeParams() {

var_manager_ = VarManager::Instance(runtime_param_.session_id);
GE_CHECK_NOTNULL(var_manager_);
var_manager_->SetMemManager(&MemManager::Instance());
return SUCCESS;
}



Loading…
Cancel
Save