Browse Source

!1406 The switch of step profile switches to model_load.

From: @zhao_zhixuan
Reviewed-by: @xchu42,@ji_chen
Signed-off-by: @ji_chen
tags/v1.3.0
mindspore-ci-bot Gitee 3 years ago
parent
commit
322e3c1c87
2 changed files with 6 additions and 5 deletions
  1. +4
    -3
      ge/graph/load/model_manager/davinci_model.cc
  2. +2
    -2
      ge/hybrid/executor/hybrid_model_executor.cc

+ 4
- 3
ge/graph/load/model_manager/davinci_model.cc View File

@@ -3864,6 +3864,7 @@ Status DavinciModel::NnExecute(rtStream_t stream, bool async_mode, const InputDa
is_dynamic_ = input_data.is_dynamic_batch;

bool profiling_model_execute_on = ProfilingManager::Instance().ProfilingModelExecuteOn();
bool profiling_model_load_on = ProfilingManager::Instance().ProfilingModelLoadOn();
GE_IF_BOOL_EXEC(profiling_model_execute_on, SetProfileTime(MODEL_PRE_PROC_START));
Status ret = CopyModelData(input_data, output_data, is_dynamic_);
GE_CHK_BOOL_TRUE_EXEC_WITH_LOG(ret != SUCCESS, return ret, "Copy input data to model failed. model id: %u",
@@ -3877,11 +3878,11 @@ Status DavinciModel::NnExecute(rtStream_t stream, bool async_mode, const InputDa
uint64_t model_id = static_cast<uint64_t>(model_id_);
int32_t device_id = static_cast<int32_t>(device_id_);
// tag_id 0 means step begin, 1 meas step end.
if (profiling_model_execute_on) {
if (profiling_model_load_on) {
GE_CHK_STATUS_RET_NOLOG(
ProfilingManager::Instance().ProfileStepInfo(index_id, model_id, 0, rt_model_stream_, device_id));
}
GELOGD("rtModelExecute do");
GE_IF_BOOL_EXEC(profiling_model_execute_on, SetProfileTime(MODEL_INFER_START));
rtError_t rt_ret = rtModelExecute(rt_model_handle_, rt_model_stream_, 0);
@@ -3889,7 +3890,7 @@ Status DavinciModel::NnExecute(rtStream_t stream, bool async_mode, const InputDa
GE_IF_BOOL_EXEC(profiling_model_execute_on, SetProfileTime(MODEL_INFER_END));
GELOGD("rtModelExecute end");

if (profiling_model_execute_on) {
if (profiling_model_load_on) {
GE_CHK_STATUS_RET_NOLOG(
ProfilingManager::Instance().ProfileStepInfo(index_id, model_id, 1, rt_model_stream_, device_id));
}


+ 2
- 2
ge/hybrid/executor/hybrid_model_executor.cc View File

@@ -83,7 +83,7 @@ Status HybridModelExecutor::ExecuteGraphInternal(SubgraphExecutor &executor,
int32_t device_id = static_cast<int32_t>(device_id_);
auto &prof_mgr = ProfilingManager::Instance();
// tag_id 0 means step begin, 1 meas step end.
if (prof_mgr.ProfilingModelExecuteOn()) {
if (!model_->IsSingleOp() && prof_mgr.ProfilingModelLoadOn()) {
GE_CHK_STATUS_RET_NOLOG(prof_mgr.ProfileStepInfo(index_id, model_id, 0, stream_, device_id));
}

@@ -91,7 +91,7 @@ Status HybridModelExecutor::ExecuteGraphInternal(SubgraphExecutor &executor,
"Failed to execute partitioned call.");
RECORD_MODEL_EXECUTION_EVENT(&context_, "[ExecuteAsync] End");

if (prof_mgr.ProfilingModelExecuteOn()) {
if (!model_->IsSingleOp() && prof_mgr.ProfilingModelLoadOn()) {
GE_CHK_STATUS_RET_NOLOG(prof_mgr.ProfileStepInfo(index_id, model_id, 1, stream_, device_id));
}



Loading…
Cancel
Save