From ee3842a1a3de3020f068af9fd5e58dda10dfe702 Mon Sep 17 00:00:00 2001 From: zhou_chao1993 Date: Tue, 25 May 2021 11:08:24 +0800 Subject: [PATCH] op overflow bug --- ge/graph/load/model_manager/task_info/kernel_ex_task_info.cc | 9 +++++---- ge/graph/load/model_manager/task_info/kernel_task_info.cc | 12 +++++------- 2 files changed, 10 insertions(+), 11 deletions(-) diff --git a/ge/graph/load/model_manager/task_info/kernel_ex_task_info.cc b/ge/graph/load/model_manager/task_info/kernel_ex_task_info.cc index 108fe78e..2b88053b 100644 --- a/ge/graph/load/model_manager/task_info/kernel_ex_task_info.cc +++ b/ge/graph/load/model_manager/task_info/kernel_ex_task_info.cc @@ -208,10 +208,6 @@ Status KernelExTaskInfo::Init(const domi::TaskDef &task_def, DavinciModel *davin return RT_ERROR_TO_GE_STATUS(rt_ret);) InitDumpTask(input_output_addr_, op_desc); - if (davinci_model_->GetOpDugReg()) { - GELOGI("Op debug is open in kernel ex task info"); - dump_args_ = input_output_addr_; - } } uint64_t input_output_addr = static_cast(reinterpret_cast(input_output_addr_)); @@ -239,9 +235,14 @@ Status KernelExTaskInfo::Init(const domi::TaskDef &task_def, DavinciModel *davin void KernelExTaskInfo::InitDumpTask(void *addr, const OpDescPtr &op_desc) { if (davinci_model_->OpNeedDump(op_desc->GetName())) { + GELOGD("Op %s need dump in kernel ex task info", op_desc->GetName().c_str()); dump_flag_ = RT_KERNEL_DUMPFLAG; dump_args_ = addr; } + if (davinci_model_->GetOpDugReg()) { + GELOGD("Op debug is open in kernel ex taskD info"); + dump_args_ = addr; + } } Status KernelExTaskInfo::CalculateArgs(const domi::TaskDef &task_def, DavinciModel *davinci_model) { diff --git a/ge/graph/load/model_manager/task_info/kernel_task_info.cc b/ge/graph/load/model_manager/task_info/kernel_task_info.cc index 31ed7889..a98c1eb8 100755 --- a/ge/graph/load/model_manager/task_info/kernel_task_info.cc +++ b/ge/graph/load/model_manager/task_info/kernel_task_info.cc @@ -669,9 +669,6 @@ Status KernelTaskInfo::InitTVMTask(uint16_t offset, const domi::KernelDef &kerne skt_dump_args_ = static_cast(args_) + offset; InitDumpTask(offset); - GE_CHK_BOOL_TRUE_EXEC_INFO(davinci_model_->GetOpDugReg(), dump_args_ = static_cast(args_) + offset, - "Op debug is open in TVM task info"); - vector virtual_io_addrs; // use virtual address for zero copy key. virtual_io_addrs.insert(virtual_io_addrs.end(), input_data_addrs.begin(), input_data_addrs.end()); virtual_io_addrs.insert(virtual_io_addrs.end(), output_data_addrs.begin(), output_data_addrs.end()); @@ -963,10 +960,6 @@ Status KernelTaskInfo::InitAicpuTask(uint32_t op_index, const domi::KernelDef &k return RT_ERROR_TO_GE_STATUS(rt_ret); } InitDumpTask(sizeof(aicpu::AicpuParamHead)); - if (davinci_model_->GetOpDugReg()) { - GELOGI("Op debug is open in aicpu task info"); - dump_args_ = static_cast(args_) + sizeof(aicpu::AicpuParamHead); - } if (kernel_type_ == ccKernelType::CUST_AI_CPU) { dump_flag_ |= RT_KERNEL_CUSTOM_AICPU; } @@ -978,6 +971,7 @@ Status KernelTaskInfo::InitAicpuTask(uint32_t op_index, const domi::KernelDef &k void KernelTaskInfo::InitDumpTask(uint32_t offset) { if (davinci_model_->OpNeedDump(op_desc_->GetName())) { + GELOGD("Op %s need dump in task info",op_desc_->GetName().c_str()); if (IsL1FusionOp(op_desc_)) { dump_flag_ = RT_FUSION_KERNEL_DUMPFLAG; } else { @@ -985,6 +979,10 @@ void KernelTaskInfo::InitDumpTask(uint32_t offset) { } dump_args_ = static_cast(args_) + offset; } + if (davinci_model_->GetOpDugReg()) { + GELOGD("Op debug is open in kernel task info"); + dump_args_ = static_cast(args_) + offset; + } } Status KernelTaskInfo::InitAicpuTaskExtInfo(const std::string &ext_info) {