|
|
@@ -2875,23 +2875,16 @@ Status DavinciModel::UpdateKnownNodeArgs(const vector<void *> &inputs, const vec |
|
|
|
GELOGI("DavinciModel::UpdateKnownNodeArgs in"); |
|
|
|
GE_CHK_STATUS_RET(CreateKnownZeroCopyMap(inputs, outputs), |
|
|
|
"DavinciModel::UpdateKnownNodeArgs create map for input/output zero copy."); |
|
|
|
if (!base_addr_not_changed_) { |
|
|
|
total_io_addrs_.clear(); |
|
|
|
orig_total_io_addrs_.clear(); |
|
|
|
for (size_t task_index = 0; task_index < task_list_.size(); ++task_index) { |
|
|
|
auto &task = task_list_[task_index]; |
|
|
|
if (task != nullptr) { |
|
|
|
Status ret = task->UpdateArgs(); |
|
|
|
if (ret != SUCCESS) { |
|
|
|
GELOGE(FAILED, "task %zu created by davinci model is nullptr.", task_index); |
|
|
|
return FAILED; |
|
|
|
} |
|
|
|
total_io_addrs_.clear(); |
|
|
|
for (size_t task_index = 0; task_index < task_list_.size(); ++task_index) { |
|
|
|
auto &task = task_list_[task_index]; |
|
|
|
if (task != nullptr) { |
|
|
|
Status ret = task->UpdateArgs(); |
|
|
|
if (ret != SUCCESS) { |
|
|
|
GELOGE(FAILED, "task %zu created by davinci model is nullptr.", task_index); |
|
|
|
return FAILED; |
|
|
|
} |
|
|
|
} |
|
|
|
// cache latest iterator io addr |
|
|
|
orig_total_io_addrs_ = total_io_addrs_; |
|
|
|
} else { |
|
|
|
total_io_addrs_ = orig_total_io_addrs_; |
|
|
|
} |
|
|
|
GE_CHK_STATUS_RET(UpdateKnownZeroCopyAddr(total_io_addrs_, false), "DavinciModel::UpdateKnownZeroCopyAddr failed."); |
|
|
|
|
|
|
|