| @@ -50,6 +50,7 @@ const char *const kIsInputVar = "INPUT_IS_VAR"; | |||||
| const char *const kIsOutputVar = "OUTPUT_IS_VAR"; | const char *const kIsOutputVar = "OUTPUT_IS_VAR"; | ||||
| const char *const kProfilingMode = "PROFILING_MODE"; | const char *const kProfilingMode = "PROFILING_MODE"; | ||||
| const char *const kIteratorV2 = "IteratorV2"; | const char *const kIteratorV2 = "IteratorV2"; | ||||
| const char *const kKernelInfoNameHccl = "ops_kernel_info_hccl"; | |||||
| const uint32_t kProfilingArStep = 2; | const uint32_t kProfilingArStep = 2; | ||||
| const uint64_t kProfilingFpStartLogid = 1; | const uint64_t kProfilingFpStartLogid = 1; | ||||
| const uint64_t kProfilingBpEndLogid = 2; | const uint64_t kProfilingBpEndLogid = 2; | ||||
| @@ -437,14 +438,15 @@ Status TaskGenerator::GenerateTask(RunContext &run_context, ComputeGraphPtr &gra | |||||
| } | } | ||||
| // Reset stream id to ge stream id, as graph load must use ge stream to reassign stream | // Reset stream id to ge stream id, as graph load must use ge stream to reassign stream | ||||
| void *ops_kernel_info_store_ptr = kernel_info_store.get(); | |||||
| for (size_t idx = task_list_size_before; idx < task_list_size_after; ++idx) { | for (size_t idx = task_list_size_before; idx < task_list_size_after; ++idx) { | ||||
| task_def_list[idx].set_stream_id(static_cast<uint32_t>(stream_id)); | task_def_list[idx].set_stream_id(static_cast<uint32_t>(stream_id)); | ||||
| op_name_map[idx] = name; | op_name_map[idx] = name; | ||||
| // Set opsKernelInfoStorePtr and op_index, the two fields be use in DistributeTask and InitTaskInfo | |||||
| TaskDef *task_def_ptr = &task_def_list[idx]; | TaskDef *task_def_ptr = &task_def_list[idx]; | ||||
| GE_CHECK_NOTNULL(task_def_ptr); | GE_CHECK_NOTNULL(task_def_ptr); | ||||
| task_def_ptr->set_ops_kernel_store_ptr(reinterpret_cast<uintptr_t>(ops_kernel_info_store_ptr)); | |||||
| // Set opsKernelInfoStorePtr for hccl which will be use in DistributeTask and InitTaskInfo | |||||
| if (op_kernel_lib_name == kKernelInfoNameHccl) { | |||||
| task_def_ptr->set_ops_kernel_store_ptr(reinterpret_cast<uintptr_t>(kernel_info_store.get())); | |||||
| } | |||||
| } | } | ||||
| GELOGD("Call %s to generate node[name:%s(%s), id:%ld, stream_id:%ld] task finished, generate %zu task(s).", | GELOGD("Call %s to generate node[name:%s(%s), id:%ld, stream_id:%ld] task finished, generate %zu task(s).", | ||||
| op_kernel_lib_name.c_str(), name.c_str(), type.c_str(), op_id, stream_id, | op_kernel_lib_name.c_str(), name.c_str(), type.c_str(), op_id, stream_id, | ||||