|
|
|
@@ -455,7 +455,7 @@ Status SingleOpModel::BuildKernelExTask(const domi::KernelExDef &kernel_def, AiC |
|
|
|
return SUCCESS; |
|
|
|
} |
|
|
|
|
|
|
|
Status SingleOpModel::BuildCpuKernelTask(const domi::KernelDef &kernel_def, OpTask **task, uint64_t kernel_id) { |
|
|
|
Status SingleOpModel::BuildCpuKernelTask(const domi::KernelDef &kernel_def, AiCpuCCTask **task, uint64_t kernel_id) { |
|
|
|
const auto &context = kernel_def.context(); |
|
|
|
auto iter = op_list_.find(context.op_index()); |
|
|
|
if (iter == op_list_.end()) { |
|
|
|
@@ -552,10 +552,19 @@ Status SingleOpModel::BuildTaskListForDynamicOp(StreamResource *stream_resource, |
|
|
|
auto task_type = static_cast<rtModelTaskType_t>(task_def.type()); |
|
|
|
if (task_type == RT_MODEL_TASK_KERNEL) { |
|
|
|
GELOGD("Building AICPU_CC task"); |
|
|
|
OpTask *task = nullptr; |
|
|
|
AiCpuCCTask *task = nullptr; |
|
|
|
uint64_t dynamic_singleop_kernel_id = aicpu_kernel_id++; |
|
|
|
GELOGI("Build dynamic singleOp CCTask, kernel_id = %lu", dynamic_singleop_kernel_id); |
|
|
|
GE_CHK_STATUS_RET_NOLOG(BuildCpuKernelTask(task_def.kernel(), &task, dynamic_singleop_kernel_id)); |
|
|
|
if (task->GetUnknownType() == DEPEND_COMPUTE) { |
|
|
|
if (aicpu_tasks_.size() < 2) { |
|
|
|
GELOGE(ACL_ERROR_GE_PARAM_INVALID, "[Check][Task]The copy task of the fourth operator was not found."); |
|
|
|
REPORT_INNER_ERROR("E19999", "The copy task of the fourth operator was not found."); |
|
|
|
return ACL_ERROR_GE_PARAM_INVALID; |
|
|
|
} |
|
|
|
const TaskDef ©_task_def = aicpu_tasks_[1]; |
|
|
|
GE_CHK_STATUS_RET_NOLOG(task->SetMemCopyTask(copy_task_def.kernel())); |
|
|
|
} |
|
|
|
task->SetModelArgs(model_name_, model_id_); |
|
|
|
single_op.op_task_.reset(task); |
|
|
|
} else if (task_type == RT_MODEL_TASK_KERNEL_EX) { |
|
|
|
|