Browse Source

Pre Merge pull request !1018 from 周超/r1.2.0

pull/1018/MERGE
周超 Gitee 5 years ago
parent
commit
2c4b925ca8
5 changed files with 19 additions and 1 deletions
  1. +1
    -0
      ge/graph/load/new_model_manager/data_dumper.cc
  2. +4
    -0
      ge/graph/load/new_model_manager/davinci_model.cc
  3. +7
    -0
      ge/graph/load/new_model_manager/davinci_model.h
  4. +1
    -1
      ge/graph/load/new_model_manager/task_info/kernel_ex_task_info.cc
  5. +6
    -0
      ge/hybrid/node_executor/compiledsubgraph/known_node_executor.cc

+ 1
- 0
ge/graph/load/new_model_manager/data_dumper.cc View File

@@ -813,6 +813,7 @@ Status DataDumper::UnloadDumpInfo() {
for (const auto &op_iter : op_list_) {
aicpu::dump::Task task;
task.set_task_id(op_iter.task_id);
task.set_stream_id(op_iter.stream_id);
op_mapping_info.mutable_task()->Add(std::move(task));
}
auto ret = ExecuteUnLoadDumpInfo(op_mapping_info);


+ 4
- 0
ge/graph/load/new_model_manager/davinci_model.cc View File

@@ -3851,6 +3851,9 @@ void DavinciModel::SetDataDumperArgs(const ComputeGraphPtr &compute_graph) {
}
data_dumper_.SetDeviceId(device_id);

if (known_node_) {
data_dumper_.SetLoopAddr(known_shape_global_step_, nullptr, nullptr);
} else {
// set loop count addr
auto get_var_addr = [](const OpDescPtr &op, const RuntimeParam &runtime_param) -> void *{
if (op != nullptr) {
@@ -3868,6 +3871,7 @@ void DavinciModel::SetDataDumperArgs(const ComputeGraphPtr &compute_graph) {
data_dumper_.SetLoopAddr(get_var_addr(GetVariableOp(NODE_NAME_GLOBAL_STEP), runtime_param_),
get_var_addr(GetVariableOp(NODE_NAME_FLOWCTRL_LOOP_PER_ITER), runtime_param_),
get_var_addr(GetVariableOp(NODE_NAME_FLOWCTRL_LOOP_COND), runtime_param_));
}
}

uint32_t DavinciModel::GetFlowctrlIndex(uint32_t op_index) {


+ 7
- 0
ge/graph/load/new_model_manager/davinci_model.h View File

@@ -464,6 +464,10 @@ class DavinciModel {
data_dumper_.SaveDumpTask(task_id, stream_id, op_desc, args);
}

void SetKnownShapeGlobalStep(void *global_step) {
known_shape_global_step_ = global_step;
}

void SetEndGraphId(uint32_t task_id, uint32_t stream_id);
DavinciModel &operator=(const DavinciModel &model) = delete;

@@ -985,6 +989,9 @@ class DavinciModel {
// key: input_index: input is merge node; value: each gear info and each output shape
std::map<size_t, std::map<vector<int64_t>, vector<int64_t>>> merge_nodes_gear_and_real_out_shape_info_;
std::vector<std::vector<int64_t>> all_gears_info_;

// known shape node for dump
void *known_shape_global_step_;
};
} // namespace ge
#endif // GE_GRAPH_LOAD_NEW_MODEL_MANAGER_DAVINCI_MODEL_H_

+ 1
- 1
ge/graph/load/new_model_manager/task_info/kernel_ex_task_info.cc View File

@@ -203,7 +203,7 @@ void KernelExTaskInfo::InitDumpTask(void *addr, const OpDescPtr &op_desc) {
if (davinci_model_->GetDumpProperties().IsLayerNeedDump(davinci_model_->Name(), davinci_model_->OmName(),
op_desc->GetName())) {
dump_flag_ = RT_KERNEL_DUMPFLAG;
dump_args_ = input_output_addr_;
dump_args_ = addr;
}
}



+ 6
- 0
ge/hybrid/node_executor/compiledsubgraph/known_node_executor.cc View File

@@ -126,6 +126,12 @@ Status KnownNodeTask::Init(TaskContext &context) {
auto dump_properties = context.GetDumpProperties();
if (dump_properties.IsDumpOpen()) {
davinci_model_->SetDumpProperties(dump_properties);
void *global_step = nullptr;
TensorValue *varible_global_step = context.GetVariable(NODE_NAME_GLOBAL_STEP);
if (varible_global_step != nullptr) {
global_step = varible_global_step->MutableData();
}
davinci_model_->SetKnownShapeGlobalStep(global_step);
}
int32_t device_id = 0;
rtError_t rt_ret = rtGetDevice(&device_id);


Loading…
Cancel
Save