!1022 Synchronization code 0125

From: @changzherui
Reviewed-by: @ljl0711,@guoqi1024
Signed-off-by: @guoqi1024
pull/1022/MERGE
mindspore-ci-bot 4 years ago committed by Gitee
commit 7183c03452

@ -240,7 +240,7 @@ if [[ "X$ENABLE_GE_UT" = "Xon" || "X$ENABLE_GE_COV" = "Xon" ]]; then
rm -rf ${BASEPATH}/cov rm -rf ${BASEPATH}/cov
mkdir ${BASEPATH}/cov mkdir ${BASEPATH}/cov
lcov -c -d build/tests/ut/ge -d build/tests/ut/common/graph/ -o cov/tmp.info lcov -c -d build/tests/ut/ge -d build/tests/ut/common/graph/ -o cov/tmp.info
lcov --remove cov/tmp.info '*/output/*' '*/build/opensrc/*' '*/build/proto/*' '*/third_party/*' '*/tests/*' '/usr/local/*' -o cov/coverage.info lcov -r cov/tmp.info '*/output/*' '*/build/opensrc/*' '*/build/proto/*' '*/third_party/*' '*/tests/*' '*/ge/common/*' '*/ge/executor/*' '*/ge/graph/*' '*/ge/host_kernels/*' '/usr/local/*' -o cov/coverage.info
cd ${BASEPATH}/cov cd ${BASEPATH}/cov
genhtml coverage.info genhtml coverage.info
fi fi

@ -129,38 +129,38 @@ set(TRAIN_SRC_LIST
"graph/label/partitioned_call_label_maker.cc" "graph/label/partitioned_call_label_maker.cc"
"graph/label/while_label_maker.cc" "graph/label/while_label_maker.cc"
"graph/load/graph_loader.cc" "graph/load/graph_loader.cc"
"graph/load/new_model_manager/cpu_queue_schedule.cc" "graph/load/model_manager/cpu_queue_schedule.cc"
"graph/load/new_model_manager/data_dumper.cc" "graph/load/model_manager/data_dumper.cc"
"graph/load/new_model_manager/data_inputer.cc" "graph/load/model_manager/data_inputer.cc"
"graph/load/new_model_manager/davinci_model.cc" "graph/load/model_manager/davinci_model.cc"
"graph/load/new_model_manager/davinci_model_parser.cc" "graph/load/model_manager/davinci_model_parser.cc"
"graph/load/new_model_manager/model_manager.cc" "graph/load/model_manager/model_manager.cc"
"graph/load/new_model_manager/model_utils.cc" "graph/load/model_manager/model_utils.cc"
"graph/load/new_model_manager/aipp_utils.cc" "graph/load/model_manager/aipp_utils.cc"
"graph/load/new_model_manager/task_info/end_graph_task_info.cc" "graph/load/model_manager/task_info/end_graph_task_info.cc"
"graph/load/new_model_manager/task_info/model_exit_task_info.cc" "graph/load/model_manager/task_info/model_exit_task_info.cc"
"graph/load/new_model_manager/task_info/event_record_task_info.cc" "graph/load/model_manager/task_info/event_record_task_info.cc"
"graph/load/new_model_manager/task_info/event_wait_task_info.cc" "graph/load/model_manager/task_info/event_wait_task_info.cc"
"graph/load/new_model_manager/task_info/fusion_start_task_info.cc" "graph/load/model_manager/task_info/fusion_start_task_info.cc"
"graph/load/new_model_manager/task_info/fusion_stop_task_info.cc" "graph/load/model_manager/task_info/fusion_stop_task_info.cc"
"graph/load/new_model_manager/task_info/hccl_task_info.cc" "graph/load/model_manager/task_info/hccl_task_info.cc"
"graph/load/new_model_manager/task_info/kernel_ex_task_info.cc" "graph/load/model_manager/task_info/kernel_ex_task_info.cc"
"graph/load/new_model_manager/task_info/kernel_task_info.cc" "graph/load/model_manager/task_info/kernel_task_info.cc"
"graph/load/new_model_manager/task_info/label_set_task_info.cc" "graph/load/model_manager/task_info/label_set_task_info.cc"
"graph/load/new_model_manager/task_info/label_switch_by_index_task_info.cc" "graph/load/model_manager/task_info/label_switch_by_index_task_info.cc"
"graph/load/new_model_manager/task_info/label_goto_ex_task_info.cc" "graph/load/model_manager/task_info/label_goto_ex_task_info.cc"
"graph/load/new_model_manager/task_info/memcpy_addr_async_task_info.cc" "graph/load/model_manager/task_info/memcpy_addr_async_task_info.cc"
"graph/load/new_model_manager/task_info/memcpy_async_task_info.cc" "graph/load/model_manager/task_info/memcpy_async_task_info.cc"
"graph/load/new_model_manager/task_info/profiler_trace_task_info.cc" "graph/load/model_manager/task_info/profiler_trace_task_info.cc"
"graph/load/new_model_manager/task_info/stream_active_task_info.cc" "graph/load/model_manager/task_info/stream_active_task_info.cc"
"graph/load/new_model_manager/task_info/stream_switch_task_info.cc" "graph/load/model_manager/task_info/stream_switch_task_info.cc"
"graph/load/new_model_manager/task_info/stream_switchn_task_info.cc" "graph/load/model_manager/task_info/stream_switchn_task_info.cc"
"graph/load/new_model_manager/task_info/super_kernel/super_kernel.cc" "graph/load/model_manager/task_info/super_kernel/super_kernel.cc"
"graph/load/new_model_manager/task_info/super_kernel/super_kernel_factory.cc" "graph/load/model_manager/task_info/super_kernel/super_kernel_factory.cc"
"graph/load/new_model_manager/task_info/task_info.cc" "graph/load/model_manager/task_info/task_info.cc"
"graph/load/new_model_manager/tbe_handle_store.cc" "graph/load/model_manager/tbe_handle_store.cc"
"graph/load/new_model_manager/zero_copy_task.cc" "graph/load/model_manager/zero_copy_task.cc"
"graph/load/new_model_manager/zero_copy_offset.cc" "graph/load/model_manager/zero_copy_offset.cc"
"graph/manager/graph_context.cc" "graph/manager/graph_context.cc"
"graph/manager/graph_manager.cc" "graph/manager/graph_manager.cc"
"graph/manager/graph_manager_utils.cc" "graph/manager/graph_manager_utils.cc"
@ -375,6 +375,7 @@ set(TRAIN_SRC_LIST
"hybrid/node_executor/host_cpu/kernel/variable_kernel.cc" "hybrid/node_executor/host_cpu/kernel/variable_kernel.cc"
"hybrid/node_executor/host_cpu/kernel/assign_kernel.cc" "hybrid/node_executor/host_cpu/kernel/assign_kernel.cc"
"hybrid/node_executor/host_cpu/kernel/random_uniform_kernel.cc" "hybrid/node_executor/host_cpu/kernel/random_uniform_kernel.cc"
"hybrid/node_executor/host_cpu/kernel/data_kernel.cc"
"hybrid/node_executor/controlop/control_op_executor.cc" "hybrid/node_executor/controlop/control_op_executor.cc"
"hybrid/node_executor/partitioned_call/partitioned_call_node_executor.cc" "hybrid/node_executor/partitioned_call/partitioned_call_node_executor.cc"
"hybrid/node_executor/hccl/hccl_node_executor.cc" "hybrid/node_executor/hccl/hccl_node_executor.cc"
@ -605,37 +606,37 @@ set(INFER_SRC_LIST
"graph/manager/util/rt_context_util.cc" "graph/manager/util/rt_context_util.cc"
"graph/manager/util/variable_accelerate_ctrl.cc" "graph/manager/util/variable_accelerate_ctrl.cc"
"graph/manager/util/debug.cc" "graph/manager/util/debug.cc"
"graph/load/new_model_manager/model_manager.cc" "graph/load/model_manager/model_manager.cc"
"graph/load/new_model_manager/data_inputer.cc" "graph/load/model_manager/data_inputer.cc"
"graph/load/new_model_manager/davinci_model.cc" "graph/load/model_manager/davinci_model.cc"
"graph/load/new_model_manager/davinci_model_parser.cc" "graph/load/model_manager/davinci_model_parser.cc"
"graph/load/new_model_manager/model_utils.cc" "graph/load/model_manager/model_utils.cc"
"graph/load/new_model_manager/aipp_utils.cc" "graph/load/model_manager/aipp_utils.cc"
"graph/load/new_model_manager/tbe_handle_store.cc" "graph/load/model_manager/tbe_handle_store.cc"
"graph/load/new_model_manager/cpu_queue_schedule.cc" "graph/load/model_manager/cpu_queue_schedule.cc"
"graph/load/new_model_manager/zero_copy_task.cc" "graph/load/model_manager/zero_copy_task.cc"
"graph/load/new_model_manager/zero_copy_offset.cc" "graph/load/model_manager/zero_copy_offset.cc"
"graph/load/new_model_manager/data_dumper.cc" "graph/load/model_manager/data_dumper.cc"
"graph/load/new_model_manager/task_info/task_info.cc" "graph/load/model_manager/task_info/task_info.cc"
"graph/load/new_model_manager/task_info/event_record_task_info.cc" "graph/load/model_manager/task_info/event_record_task_info.cc"
"graph/load/new_model_manager/task_info/event_wait_task_info.cc" "graph/load/model_manager/task_info/event_wait_task_info.cc"
"graph/load/new_model_manager/task_info/fusion_start_task_info.cc" "graph/load/model_manager/task_info/fusion_start_task_info.cc"
"graph/load/new_model_manager/task_info/fusion_stop_task_info.cc" "graph/load/model_manager/task_info/fusion_stop_task_info.cc"
"graph/load/new_model_manager/task_info/kernel_ex_task_info.cc" "graph/load/model_manager/task_info/kernel_ex_task_info.cc"
"graph/load/new_model_manager/task_info/kernel_task_info.cc" "graph/load/model_manager/task_info/kernel_task_info.cc"
"graph/load/new_model_manager/task_info/label_set_task_info.cc" "graph/load/model_manager/task_info/label_set_task_info.cc"
"graph/load/new_model_manager/task_info/label_switch_by_index_task_info.cc" "graph/load/model_manager/task_info/label_switch_by_index_task_info.cc"
"graph/load/new_model_manager/task_info/label_goto_ex_task_info.cc" "graph/load/model_manager/task_info/label_goto_ex_task_info.cc"
"graph/load/new_model_manager/task_info/memcpy_async_task_info.cc" "graph/load/model_manager/task_info/memcpy_async_task_info.cc"
"graph/load/new_model_manager/task_info/memcpy_addr_async_task_info.cc" "graph/load/model_manager/task_info/memcpy_addr_async_task_info.cc"
"graph/load/new_model_manager/task_info/profiler_trace_task_info.cc" "graph/load/model_manager/task_info/profiler_trace_task_info.cc"
"graph/load/new_model_manager/task_info/stream_active_task_info.cc" "graph/load/model_manager/task_info/stream_active_task_info.cc"
"graph/load/new_model_manager/task_info/stream_switch_task_info.cc" "graph/load/model_manager/task_info/stream_switch_task_info.cc"
"graph/load/new_model_manager/task_info/stream_switchn_task_info.cc" "graph/load/model_manager/task_info/stream_switchn_task_info.cc"
"graph/load/new_model_manager/task_info/end_graph_task_info.cc" "graph/load/model_manager/task_info/end_graph_task_info.cc"
"graph/load/new_model_manager/task_info/model_exit_task_info.cc" "graph/load/model_manager/task_info/model_exit_task_info.cc"
"graph/load/new_model_manager/task_info/super_kernel/super_kernel_factory.cc" "graph/load/model_manager/task_info/super_kernel/super_kernel_factory.cc"
"graph/load/new_model_manager/task_info/super_kernel/super_kernel.cc" "graph/load/model_manager/task_info/super_kernel/super_kernel.cc"
"single_op/task/op_task.cc" "single_op/task/op_task.cc"
"single_op/task/build_task_utils.cc" "single_op/task/build_task_utils.cc"
"single_op/task/tbe_task_builder.cc" "single_op/task/tbe_task_builder.cc"

@ -57,6 +57,7 @@ message TaskDef {
LabelSetDef label_set = 37; LabelSetDef label_set = 37;
LabelGotoExDef label_goto_ex = 38; LabelGotoExDef label_goto_ex = 38;
LabelSwitchByIndexDef label_switch_by_index = 39; LabelSwitchByIndexDef label_switch_by_index = 39;
KernelDefWithHandle kernel_with_handle = 40;
} }
message KernelDef { message KernelDef {
@ -74,6 +75,19 @@ message KernelDef {
uint32 kernel_ext_info_size = 19; uint32 kernel_ext_info_size = 19;
} }
message KernelDefWithHandle {
KernelContext context = 1;
uint64 handle = 10;
string dev_func = 11;
uint32 block_dim = 12;
uint32 args_size = 13;
bytes args = 14;
bytes sm_desc = 15;
string original_kernel_key = 16;
string node_info = 17;
}
message KernelContext { message KernelContext {
uint32 kernel_type = 1; uint32 kernel_type = 1;
uint32 op_id = 2; // OP type in CCE uint32 op_id = 2; // OP type in CCE

@ -62,7 +62,7 @@ Status FileSaver::WriteData(const void *data, uint32_t size, int32_t fd) {
while (size > size_1g) { while (size > size_1g) {
write_count = mmWrite(fd, reinterpret_cast<void *>(seek), size_1g); write_count = mmWrite(fd, reinterpret_cast<void *>(seek), size_1g);
if (write_count == EN_INVALID_PARAM || write_count == EN_ERROR) { if (write_count == EN_INVALID_PARAM || write_count == EN_ERROR) {
GELOGE(FAILED, "Write data failed. mmpa_errorno = %d, %s", write_count, strerror(errno)); GELOGE(FAILED, "Write data failed. mmpa_errorno = %ld, %s", write_count, strerror(errno));
return FAILED; return FAILED;
} }
size -= size_1g; size -= size_1g;
@ -75,7 +75,7 @@ Status FileSaver::WriteData(const void *data, uint32_t size, int32_t fd) {
// -1: Failed to write to file; - 2: Illegal parameter // -1: Failed to write to file; - 2: Illegal parameter
if (write_count == EN_INVALID_PARAM || write_count == EN_ERROR) { if (write_count == EN_INVALID_PARAM || write_count == EN_ERROR) {
GELOGE(FAILED, "Write data failed. mmpa_errorno = %d, %s", write_count, strerror(errno)); GELOGE(FAILED, "Write data failed. mmpa_errorno = %ld, %s", write_count, strerror(errno));
return FAILED; return FAILED;
} }
@ -133,7 +133,7 @@ Status FileSaver::SaveWithFileHeader(const std::string &file_path, const ModelFi
WriteData(static_cast<const void *>(&model_partition_table), table_size, fd) != SUCCESS, ret = FAILED; break); WriteData(static_cast<const void *>(&model_partition_table), table_size, fd) != SUCCESS, ret = FAILED; break);
// Write partition data // Write partition data
for (const auto &partitionData : partition_datas) { for (const auto &partitionData : partition_datas) {
GELOGI("GC:size[%zu]", partitionData.size); GELOGI("GC:size[%u]", partitionData.size);
GE_CHK_BOOL_TRUE_EXEC_WITH_LOG( GE_CHK_BOOL_TRUE_EXEC_WITH_LOG(
WriteData(static_cast<const void *>(partitionData.data), partitionData.size, fd) != SUCCESS, ret = FAILED; WriteData(static_cast<const void *>(partitionData.data), partitionData.size, fd) != SUCCESS, ret = FAILED;
break); break);
@ -305,7 +305,7 @@ Status FileSaver::SaveWithFileHeader(const std::string &file_path, const ModelFi
// Write partition data // Write partition data
auto &cur_partition_datas = all_partition_datas[index]; auto &cur_partition_datas = all_partition_datas[index];
for (const auto &partition_data : cur_partition_datas) { for (const auto &partition_data : cur_partition_datas) {
GELOGI("GC:size[%zu]", partition_data.size); GELOGI("GC:size[%u]", partition_data.size);
GE_CHK_BOOL_TRUE_EXEC_WITH_LOG( GE_CHK_BOOL_TRUE_EXEC_WITH_LOG(
WriteData(static_cast<const void *>(partition_data.data), partition_data.size, fd) != SUCCESS, ret = FAILED; WriteData(static_cast<const void *>(partition_data.data), partition_data.size, fd) != SUCCESS, ret = FAILED;
break); break);

@ -32,7 +32,7 @@ int64_t GetCubeSizeByDataType(DataType data_type) {
if (size <= 0) { if (size <= 0) {
std::string error = "Failed to get cube size, the data type " + std::string error = "Failed to get cube size, the data type " +
FmtToStr(TypeUtils::DataTypeToSerialString(data_type)) + " is invalid"; FmtToStr(TypeUtils::DataTypeToSerialString(data_type)) + " is invalid";
GE_ERRORLOG_AND_ERRORMSG(PARAM_INVALID, error.c_str()); GE_WARNINGLOG_AND_ERRORMSG(error.c_str());
return -1; return -1;
} else if (size == 1) { } else if (size == 1) {
return kCubeSize * 2; // 32 bytes cube size return kCubeSize * 2; // 32 bytes cube size
@ -61,7 +61,7 @@ bool CheckShapeValid(const std::vector<int64_t> &shape, const int64_t expect_dim
if (expect_dims <= 0 || shape.size() != static_cast<size_t>(expect_dims)) { if (expect_dims <= 0 || shape.size() != static_cast<size_t>(expect_dims)) {
std::string error = "Invalid shape, dims num " + FmtToStr(shape.size()) + std::string error = "Invalid shape, dims num " + FmtToStr(shape.size()) +
", expect " + FmtToStr(expect_dims); ", expect " + FmtToStr(expect_dims);
GE_ERRORLOG_AND_ERRORMSG(PARAM_INVALID, error.c_str()); GE_WARNINGLOG_AND_ERRORMSG(error.c_str());
return false; return false;
} }
return IsShapeValid(shape); return IsShapeValid(shape);
@ -75,12 +75,12 @@ bool IsShapeValid(const std::vector<int64_t> &shape) {
for (auto dim : shape) { for (auto dim : shape) {
if (dim < 0) { if (dim < 0) {
std::string error = "Invalid negative dims in the shape " + FmtToStr(ShapeToString(shape)); std::string error = "Invalid negative dims in the shape " + FmtToStr(ShapeToString(shape));
GE_ERRORLOG_AND_ERRORMSG(PARAM_INVALID, error.c_str()); GE_WARNINGLOG_AND_ERRORMSG(error.c_str());
return false; return false;
} }
if (dim != 0 && kShapeItemNumMAX / dim < num) { if (dim != 0 && kShapeItemNumMAX / dim < num) {
std::string error = "Shape overflow, the total count should be less than " + FmtToStr(kShapeItemNumMAX); std::string error = "Shape overflow, the total count should be less than " + FmtToStr(kShapeItemNumMAX);
GE_ERRORLOG_AND_ERRORMSG(PARAM_INVALID, error.c_str()); GE_WARNINGLOG_AND_ERRORMSG(error.c_str());
return false; return false;
} }
num *= dim; num *= dim;
@ -108,7 +108,7 @@ bool IsTransShapeSrcCorrect(const TransArgs &args, std::vector<int64_t> &expect_
FmtToStr(TypeUtils::FormatToSerialString(args.dst_format)) + ", invalid relationship between src shape " + FmtToStr(TypeUtils::FormatToSerialString(args.dst_format)) + ", invalid relationship between src shape " +
FmtToStr(ShapeToString(args.src_shape)) + " and dst " + FmtToStr(ShapeToString(args.src_shape)) + " and dst " +
FmtToStr(ShapeToString(args.dst_shape)); FmtToStr(ShapeToString(args.dst_shape));
GE_ERRORLOG_AND_ERRORMSG(PARAM_INVALID, error.c_str()); GE_WARNINGLOG_AND_ERRORMSG(error.c_str());
return false; return false;
} }
return true; return true;
@ -121,7 +121,7 @@ bool IsTransShapeDstCorrect(const TransArgs &args, std::vector<int64_t> &expect_
FmtToStr(TypeUtils::FormatToSerialString(args.dst_format)) + ", the dst shape" + FmtToStr(TypeUtils::FormatToSerialString(args.dst_format)) + ", the dst shape" +
FmtToStr(ShapeToString(args.dst_shape)) + " is invalid, expect" + FmtToStr(ShapeToString(args.dst_shape)) + " is invalid, expect" +
FmtToStr(ShapeToString(expect_shape)); FmtToStr(ShapeToString(expect_shape));
GE_ERRORLOG_AND_ERRORMSG(PARAM_INVALID, error.c_str()); GE_WARNINGLOG_AND_ERRORMSG(error.c_str());
return false; return false;
} }
return true; return true;

@ -28,7 +28,7 @@
#include "framework/common/util.h" #include "framework/common/util.h"
#include "graph/detail/attributes_holder.h" #include "graph/detail/attributes_holder.h"
#include "graph/detail/model_serialize_imp.h" #include "graph/detail/model_serialize_imp.h"
#include "graph/load/new_model_manager/davinci_model_parser.h" #include "graph/load/model_manager/davinci_model_parser.h"
#include "graph/model.h" #include "graph/model.h"
#include "graph/utils/graph_utils.h" #include "graph/utils/graph_utils.h"
#include "graph/utils/tensor_utils.h" #include "graph/utils/tensor_utils.h"
@ -1000,8 +1000,8 @@ Status ModelCacheHelper::RecoverVarAddrAndTensorDesc(const Json &json) const {
auto offset = (tensor_addr_mgr.offset); auto offset = (tensor_addr_mgr.offset);
// Check logic address and offset // Check logic address and offset
if (logic_address - offset != VarManager::Instance(session_id_)->GetVarMemLogicBase()) { if (logic_address - offset != VarManager::Instance(session_id_)->GetVarMemLogicBase()) {
GELOGW("Check logic_address[%u] and offset [%u] of %s failed, var mem logic base is %u, abandon", logic_address, GELOGW("Check logic_address[%lu] and offset [%lu] of %s failed, var mem logic base is %lu, abandon",
offset, iter.first.c_str(), VarManager::Instance(session_id_)->GetVarMemLogicBase()); logic_address, offset, iter.first.c_str(), VarManager::Instance(session_id_)->GetVarMemLogicBase());
return PARAM_INVALID; return PARAM_INVALID;
} }
// Offset is needed by SaveVarVddr instead of logic address // Offset is needed by SaveVarVddr instead of logic address

@ -23,7 +23,7 @@
#include "framework/common/debug/ge_log.h" #include "framework/common/debug/ge_log.h"
#include "framework/omg/version.h" #include "framework/omg/version.h"
#include "graph/debug/ge_attr_define.h" #include "graph/debug/ge_attr_define.h"
#include "graph/load/new_model_manager/davinci_model_parser.h" #include "graph/load/model_manager/davinci_model_parser.h"
#include "graph/utils/attr_utils.h" #include "graph/utils/attr_utils.h"
#include "graph/utils/graph_utils.h" #include "graph/utils/graph_utils.h"
@ -537,7 +537,7 @@ FMK_FUNC_HOST_VISIBILITY FMK_FUNC_DEV_VISIBILITY Status ModelHelper::LoadRootMod
//model verison 1.0 file header does not have model_num member //model verison 1.0 file header does not have model_num member
is_unknown_shape_model_ = file_header_->version >= ge::MODEL_VERSION && is_unknown_shape_model_ = file_header_->version >= ge::MODEL_VERSION &&
file_header_->model_num > kStatiOmFileModelNum; file_header_->model_num > kStatiOmFileModelNum;
GELOGD("cur om model is ge root model or no %d, model version %zu", is_unknown_shape_model_, file_header_->version); GELOGD("cur om model is ge root model or no %d, model version %u", is_unknown_shape_model_, file_header_->version);
OmFileLoadHelper om_load_helper; OmFileLoadHelper om_load_helper;
if (is_unknown_shape_model_) { if (is_unknown_shape_model_) {
@ -746,7 +746,7 @@ FMK_FUNC_HOST_VISIBILITY FMK_FUNC_DEV_VISIBILITY Status ModelHelper::LoadTask(Om
GELOGE(INTERNAL_ERROR, "ReadProtoFromArray failed."); GELOGE(INTERNAL_ERROR, "ReadProtoFromArray failed.");
return INTERNAL_ERROR; return INTERNAL_ERROR;
} }
GELOGD("TASK_INFO op_size:%zu, stream_num:%u", task->op().size(), task->stream_num()); GELOGD("TASK_INFO op_size:%d, stream_num:%u", task->op().size(), task->stream_num());
} }
cur_model->SetModelTaskDef(task); cur_model->SetModelTaskDef(task);
return SUCCESS; return SUCCESS;

@ -203,7 +203,7 @@ Status OmFileLoadHelper::LoadModelPartitionTable(uint8_t *model_data, uint32_t m
auto partition_table = reinterpret_cast<ModelPartitionTable *>(model_data + cur_offset); auto partition_table = reinterpret_cast<ModelPartitionTable *>(model_data + cur_offset);
size_t partition_table_size = SIZE_OF_MODEL_PARTITION_TABLE(*partition_table); size_t partition_table_size = SIZE_OF_MODEL_PARTITION_TABLE(*partition_table);
cur_offset += partition_table_size; cur_offset += partition_table_size;
GELOGD("Cur model index %zu: ModelPartitionTable num :%u, " GELOGD("Cur model index %u: ModelPartitionTable num :%u, "
"ModelFileHeader length :%zu, ModelPartitionTable length :%zu", "ModelFileHeader length :%zu, ModelPartitionTable length :%zu",
index, partition_table->num, sizeof(ModelFileHeader), partition_table_size); index, partition_table->num, sizeof(ModelFileHeader), partition_table_size);
if (model_data_size <= cur_offset) { if (model_data_size <= cur_offset) {
@ -219,7 +219,7 @@ Status OmFileLoadHelper::LoadModelPartitionTable(uint8_t *model_data, uint32_t m
partition.type = partition_table->partition[i].type; partition.type = partition_table->partition[i].type;
if (index >= model_contexts_.size()) { if (index >= model_contexts_.size()) {
if (index != model_contexts_.size()) { if (index != model_contexts_.size()) {
GELOGE(FAILED, "cur index is %zu make model_contexts_ overflow", index); GELOGE(FAILED, "cur index is %u make model_contexts_ overflow", index);
return FAILED; return FAILED;
} }
@ -231,16 +231,16 @@ Status OmFileLoadHelper::LoadModelPartitionTable(uint8_t *model_data, uint32_t m
} }
if (partition.size > model_data_size || cur_offset > model_data_size - partition.size) { if (partition.size > model_data_size || cur_offset > model_data_size - partition.size) {
GELOGE(GE_EXEC_MODEL_DATA_SIZE_INVALID, "The partition size %zu is greater than the model data size %u.", GELOGE(GE_EXEC_MODEL_DATA_SIZE_INVALID, "The partition size %u is greater than the model data size %u.",
partition.size + cur_offset, model_data_size); partition.size + cur_offset, model_data_size);
return GE_EXEC_MODEL_DATA_SIZE_INVALID; return GE_EXEC_MODEL_DATA_SIZE_INVALID;
} }
cur_offset += partition.size; cur_offset += partition.size;
GELOGD("Partition, type:%d, size:%u, model_index:%zu", static_cast<int>(partition.type), partition.size, index); GELOGD("Partition, type:%d, size:%u, model_index:%u", static_cast<int>(partition.type), partition.size, index);
} }
} }
if (cur_offset != model_data_size) { if (cur_offset != model_data_size) {
GELOGE(FAILED, "do not get the complete model, read end offset:%zu, all size:%zu", cur_offset, model_data_size); GELOGE(FAILED, "do not get the complete model, read end offset:%u, all size:%u", cur_offset, model_data_size);
return FAILED; return FAILED;
} }
return SUCCESS; return SUCCESS;

@ -51,7 +51,7 @@ bool KernelStore::Build() {
kernel_head.name_len = static_cast<uint32_t>(kernel->GetName().length()); kernel_head.name_len = static_cast<uint32_t>(kernel->GetName().length());
kernel_head.bin_len = static_cast<uint32_t>(kernel->GetBinDataSize()); kernel_head.bin_len = static_cast<uint32_t>(kernel->GetBinDataSize());
GELOGD("get kernel bin name %s, addr %p, size %u", GELOGD("get kernel bin name %s, addr %p, size %zu",
kernel->GetName().c_str(), kernel->GetBinData(), kernel->GetBinDataSize()); kernel->GetName().c_str(), kernel->GetBinData(), kernel->GetBinDataSize());
mem_ret = memcpy_s(next_buffer, remain_len, &kernel_head, sizeof(kernel_head)); mem_ret = memcpy_s(next_buffer, remain_len, &kernel_head, sizeof(kernel_head));
GE_CHK_BOOL_EXEC_NOLOG(mem_ret == EOK, return false); GE_CHK_BOOL_EXEC_NOLOG(mem_ret == EOK, return false);

@ -880,7 +880,7 @@ inline Status CheckInt32DivOverflow(int32_t a, int32_t b) {
#define FMK_INT64_UINT32_MULCHECK(a, b) \ #define FMK_INT64_UINT32_MULCHECK(a, b) \
if (ge::CheckInt64Uint32MulOverflow((a), (b)) != SUCCESS) { \ if (ge::CheckInt64Uint32MulOverflow((a), (b)) != SUCCESS) { \
GELOGW("Int64 %ld and UINT32 %u multiplication can result in overflow!", static_cast<uint32_t>(a), \ GELOGW("Int64 %ld and Uint32 %u multiplication can result in overflow!", static_cast<int64_t>(a), \
static_cast<uint32_t>(b)); \ static_cast<uint32_t>(b)); \
return INTERNAL_ERROR; \ return INTERNAL_ERROR; \
} }

@ -21,7 +21,7 @@
#include "framework/common/string_util.h" #include "framework/common/string_util.h"
#include "graph/ge_context.h" #include "graph/ge_context.h"
#include "runtime/base.h" #include "runtime/base.h"
#include "graph/load/new_model_manager/davinci_model.h" #include "graph/load/model_manager/davinci_model.h"
namespace { namespace {
const char *const kTrainingTrace = "training_trace"; const char *const kTrainingTrace = "training_trace";
@ -218,6 +218,7 @@ FMK_FUNC_HOST_VISIBILITY FMK_FUNC_DEV_VISIBILITY void ProfilingManager::Profilin
uint32_t stream_id = task.stream_id; uint32_t stream_id = task.stream_id;
std::string shape_type = task.shape_type; std::string shape_type = task.shape_type;
int64_t cur_iter_num = task.cur_iter_num; int64_t cur_iter_num = task.cur_iter_num;
uint32_t task_type = task.task_type;
data = model_name.append(" ") data = model_name.append(" ")
.append(op_name).append(" ") .append(op_name).append(" ")
.append(std::to_string(block_dim)).append(" ") .append(std::to_string(block_dim)).append(" ")
@ -225,7 +226,8 @@ FMK_FUNC_HOST_VISIBILITY FMK_FUNC_DEV_VISIBILITY void ProfilingManager::Profilin
.append(std::to_string(stream_id)).append(" ") .append(std::to_string(stream_id)).append(" ")
.append(std::to_string(model_id)).append(" ") .append(std::to_string(model_id)).append(" ")
.append(shape_type).append(" ") .append(shape_type).append(" ")
.append(std::to_string(cur_iter_num)).append("\n"); .append(std::to_string(cur_iter_num)).append(" ")
.append(std::to_string(task_type)).append("\n");
ReporterData reporter_data{}; ReporterData reporter_data{};
reporter_data.deviceId = device_id; reporter_data.deviceId = device_id;

@ -57,6 +57,7 @@ message TaskDef {
LabelSetDef label_set = 37; LabelSetDef label_set = 37;
LabelGotoExDef label_goto_ex = 38; LabelGotoExDef label_goto_ex = 38;
LabelSwitchByIndexDef label_switch_by_index = 39; LabelSwitchByIndexDef label_switch_by_index = 39;
KernelDefWithHandle kernel_with_handle = 40;
} }
message KernelDef { message KernelDef {
@ -74,6 +75,19 @@ message KernelDef {
uint32 kernel_ext_info_size = 19; uint32 kernel_ext_info_size = 19;
} }
message KernelDefWithHandle {
KernelContext context = 1;
uint64 handle = 10;
string dev_func = 11;
uint32 block_dim = 12;
uint32 args_size = 13;
bytes args = 14;
bytes sm_desc = 15;
string original_kernel_key = 16;
string node_info = 17;
}
message KernelContext { message KernelContext {
uint32 kernel_type = 1; uint32 kernel_type = 1;
uint32 op_id = 2; // OP type in CCE uint32 op_id = 2; // OP type in CCE

@ -388,6 +388,7 @@ REGISTER_OPTYPE_DEFINE(HCOMRECEIVE, "HcomReceive");
REGISTER_OPTYPE_DEFINE(HCOMREMOTEREAD, "HcomRemoteRead"); REGISTER_OPTYPE_DEFINE(HCOMREMOTEREAD, "HcomRemoteRead");
REGISTER_OPTYPE_DEFINE(HCOMREMOTEREFREAD, "HcomRemoteRefRead"); REGISTER_OPTYPE_DEFINE(HCOMREMOTEREFREAD, "HcomRemoteRefRead");
REGISTER_OPTYPE_DEFINE(HCOMREMOTEWRITE, "HcomRemoteWrite"); REGISTER_OPTYPE_DEFINE(HCOMREMOTEWRITE, "HcomRemoteWrite");
REGISTER_OPTYPE_DEFINE(HCOMREMOTESCATTERWRITE, "HcomRemoteScatterWrite");
REGISTER_OPTYPE_DEFINE(VARASSIGN, "VarAssign"); REGISTER_OPTYPE_DEFINE(VARASSIGN, "VarAssign");
REGISTER_OPTYPE_DEFINE(VARISINITIALIZEDOP, "VarIsInitializedOp"); REGISTER_OPTYPE_DEFINE(VARISINITIALIZEDOP, "VarIsInitializedOp");

@ -32,37 +32,37 @@ set(SRC_LIST
"../hybrid/node_executor/aicpu/aicpu_ext_info.cc" "../hybrid/node_executor/aicpu/aicpu_ext_info.cc"
"../model/ge_model.cc" "../model/ge_model.cc"
"../model/ge_root_model.cc" "../model/ge_root_model.cc"
"../graph/load/new_model_manager/davinci_model.cc" "../graph/load/model_manager/davinci_model.cc"
"../graph/load/new_model_manager/davinci_model_parser.cc" "../graph/load/model_manager/davinci_model_parser.cc"
"../graph/load/new_model_manager/model_manager.cc" "../graph/load/model_manager/model_manager.cc"
"../graph/load/new_model_manager/tbe_handle_store.cc" "../graph/load/model_manager/tbe_handle_store.cc"
"../graph/load/new_model_manager/cpu_queue_schedule.cc" "../graph/load/model_manager/cpu_queue_schedule.cc"
"../graph/load/new_model_manager/model_utils.cc" "../graph/load/model_manager/model_utils.cc"
"../graph/load/new_model_manager/aipp_utils.cc" "../graph/load/model_manager/aipp_utils.cc"
"../graph/load/new_model_manager/data_inputer.cc" "../graph/load/model_manager/data_inputer.cc"
"../graph/load/new_model_manager/data_dumper.cc" "../graph/load/model_manager/data_dumper.cc"
"../graph/load/new_model_manager/zero_copy_task.cc" "../graph/load/model_manager/zero_copy_task.cc"
"../graph/load/new_model_manager/zero_copy_offset.cc" "../graph/load/model_manager/zero_copy_offset.cc"
"../graph/load/new_model_manager/task_info/task_info.cc" "../graph/load/model_manager/task_info/task_info.cc"
"../graph/load/new_model_manager/task_info/event_record_task_info.cc" "../graph/load/model_manager/task_info/event_record_task_info.cc"
"../graph/load/new_model_manager/task_info/event_wait_task_info.cc" "../graph/load/model_manager/task_info/event_wait_task_info.cc"
"../graph/load/new_model_manager/task_info/fusion_start_task_info.cc" "../graph/load/model_manager/task_info/fusion_start_task_info.cc"
"../graph/load/new_model_manager/task_info/fusion_stop_task_info.cc" "../graph/load/model_manager/task_info/fusion_stop_task_info.cc"
"../graph/load/new_model_manager/task_info/kernel_ex_task_info.cc" "../graph/load/model_manager/task_info/kernel_ex_task_info.cc"
"../graph/load/new_model_manager/task_info/kernel_task_info.cc" "../graph/load/model_manager/task_info/kernel_task_info.cc"
"../graph/load/new_model_manager/task_info/label_set_task_info.cc" "../graph/load/model_manager/task_info/label_set_task_info.cc"
"../graph/load/new_model_manager/task_info/label_switch_by_index_task_info.cc" "../graph/load/model_manager/task_info/label_switch_by_index_task_info.cc"
"../graph/load/new_model_manager/task_info/label_goto_ex_task_info.cc" "../graph/load/model_manager/task_info/label_goto_ex_task_info.cc"
"../graph/load/new_model_manager/task_info/memcpy_async_task_info.cc" "../graph/load/model_manager/task_info/memcpy_async_task_info.cc"
"../graph/load/new_model_manager/task_info/memcpy_addr_async_task_info.cc" "../graph/load/model_manager/task_info/memcpy_addr_async_task_info.cc"
"../graph/load/new_model_manager/task_info/profiler_trace_task_info.cc" "../graph/load/model_manager/task_info/profiler_trace_task_info.cc"
"../graph/load/new_model_manager/task_info/stream_active_task_info.cc" "../graph/load/model_manager/task_info/stream_active_task_info.cc"
"../graph/load/new_model_manager/task_info/stream_switch_task_info.cc" "../graph/load/model_manager/task_info/stream_switch_task_info.cc"
"../graph/load/new_model_manager/task_info/stream_switchn_task_info.cc" "../graph/load/model_manager/task_info/stream_switchn_task_info.cc"
"../graph/load/new_model_manager/task_info/end_graph_task_info.cc" "../graph/load/model_manager/task_info/end_graph_task_info.cc"
"../graph/load/new_model_manager/task_info/model_exit_task_info.cc" "../graph/load/model_manager/task_info/model_exit_task_info.cc"
"../graph/load/new_model_manager/task_info/super_kernel/super_kernel_factory.cc" "../graph/load/model_manager/task_info/super_kernel/super_kernel_factory.cc"
"../graph/load/new_model_manager/task_info/super_kernel/super_kernel.cc" "../graph/load/model_manager/task_info/super_kernel/super_kernel.cc"
"../graph/common/local_context.cc" "../graph/common/local_context.cc"
"../opskernel_manager/ops_kernel_builder_manager.cc" "../opskernel_manager/ops_kernel_builder_manager.cc"
"../single_op/single_op_manager.cc" "../single_op/single_op_manager.cc"
@ -104,6 +104,7 @@ set(SRC_LIST
"../hybrid/node_executor/host_cpu/kernel/variable_kernel.cc" "../hybrid/node_executor/host_cpu/kernel/variable_kernel.cc"
"../hybrid/node_executor/host_cpu/kernel/assign_kernel.cc" "../hybrid/node_executor/host_cpu/kernel/assign_kernel.cc"
"../hybrid/node_executor/host_cpu/kernel/random_uniform_kernel.cc" "../hybrid/node_executor/host_cpu/kernel/random_uniform_kernel.cc"
"../hybrid/node_executor/host_cpu/kernel/data_kernel.cc"
"../hybrid/node_executor/controlop/control_op_executor.cc" "../hybrid/node_executor/controlop/control_op_executor.cc"
"../hybrid/node_executor/partitioned_call/partitioned_call_node_executor.cc" "../hybrid/node_executor/partitioned_call/partitioned_call_node_executor.cc"
"../hybrid/node_executor/rts/rts_node_executor.cc" "../hybrid/node_executor/rts/rts_node_executor.cc"

@ -29,15 +29,15 @@
#include "framework/common/util.h" #include "framework/common/util.h"
#include "graph/execute/graph_execute.h" #include "graph/execute/graph_execute.h"
#include "graph/load/graph_loader.h" #include "graph/load/graph_loader.h"
#include "graph/load/new_model_manager/davinci_model_parser.h" #include "graph/load/model_manager/davinci_model_parser.h"
#include "graph/load/new_model_manager/model_manager.h" #include "graph/load/model_manager/model_manager.h"
#include "graph/manager/graph_mem_allocator.h" #include "graph/manager/graph_mem_allocator.h"
#include "graph/model.h" #include "graph/model.h"
#include "graph/utils/graph_utils.h" #include "graph/utils/graph_utils.h"
#include "mmpa/mmpa_api.h" #include "mmpa/mmpa_api.h"
#include "single_op/single_op_manager.h" #include "single_op/single_op_manager.h"
#include "graph/manager/graph_var_manager.h" #include "graph/manager/graph_var_manager.h"
#include "graph/load/new_model_manager/davinci_model.h" #include "graph/load/model_manager/davinci_model.h"
#include "opskernel_manager/ops_kernel_builder_manager.h" #include "opskernel_manager/ops_kernel_builder_manager.h"
using std::string; using std::string;
@ -454,7 +454,7 @@ Status GeExecutor::GetCurDynamicDims(uint32_t model_id, const vector<uint64_t> &
if (all_data_dims[i] < 0) { if (all_data_dims[i] < 0) {
cur_dynamic_dims.push_back(dynamic_dims[i]); cur_dynamic_dims.push_back(dynamic_dims[i]);
} else if (static_cast<uint64_t>(all_data_dims[i]) != dynamic_dims[i]) { } else if (static_cast<uint64_t>(all_data_dims[i]) != dynamic_dims[i]) {
GELOGE(ACL_ERROR_GE_DYNAMIC_INPUT_LENGTH_INVALID, "Static dims should be same, index: %zu value: %d should be %d", GELOGE(ACL_ERROR_GE_DYNAMIC_INPUT_LENGTH_INVALID, "Static dims should be same, index: %zu value: %lu should be %ld",
i, dynamic_dims[i], all_data_dims[i]); i, dynamic_dims[i], all_data_dims[i]);
return ACL_ERROR_GE_DYNAMIC_INPUT_LENGTH_INVALID; return ACL_ERROR_GE_DYNAMIC_INPUT_LENGTH_INVALID;
} }

@ -22,37 +22,37 @@ local_ge_executor_src_files := \
../graph/manager/util/debug.cc \ ../graph/manager/util/debug.cc \
../model/ge_model.cc \ ../model/ge_model.cc \
../model/ge_root_model.cc \ ../model/ge_root_model.cc \
../graph/load/new_model_manager/davinci_model.cc \ ../graph/load/model_manager/davinci_model.cc \
../graph/load/new_model_manager/davinci_model_parser.cc \ ../graph/load/model_manager/davinci_model_parser.cc \
../graph/load/new_model_manager/model_manager.cc \ ../graph/load/model_manager/model_manager.cc \
../graph/load/new_model_manager/tbe_handle_store.cc \ ../graph/load/model_manager/tbe_handle_store.cc \
../graph/load/new_model_manager/cpu_queue_schedule.cc \ ../graph/load/model_manager/cpu_queue_schedule.cc \
../graph/load/new_model_manager/model_utils.cc \ ../graph/load/model_manager/model_utils.cc \
../graph/load/new_model_manager/aipp_utils.cc \ ../graph/load/model_manager/aipp_utils.cc \
../graph/load/new_model_manager/data_inputer.cc \ ../graph/load/model_manager/data_inputer.cc \
../graph/load/new_model_manager/data_dumper.cc \ ../graph/load/model_manager/data_dumper.cc \
../graph/load/new_model_manager/zero_copy_task.cc \ ../graph/load/model_manager/zero_copy_task.cc \
../graph/load/new_model_manager/zero_copy_offset.cc \ ../graph/load/model_manager/zero_copy_offset.cc \
../graph/load/new_model_manager/task_info/task_info.cc \ ../graph/load/model_manager/task_info/task_info.cc \
../graph/load/new_model_manager/task_info/event_record_task_info.cc \ ../graph/load/model_manager/task_info/event_record_task_info.cc \
../graph/load/new_model_manager/task_info/event_wait_task_info.cc \ ../graph/load/model_manager/task_info/event_wait_task_info.cc \
../graph/load/new_model_manager/task_info/fusion_start_task_info.cc \ ../graph/load/model_manager/task_info/fusion_start_task_info.cc \
../graph/load/new_model_manager/task_info/fusion_stop_task_info.cc \ ../graph/load/model_manager/task_info/fusion_stop_task_info.cc \
../graph/load/new_model_manager/task_info/kernel_ex_task_info.cc \ ../graph/load/model_manager/task_info/kernel_ex_task_info.cc \
../graph/load/new_model_manager/task_info/kernel_task_info.cc \ ../graph/load/model_manager/task_info/kernel_task_info.cc \
../graph/load/new_model_manager/task_info/label_set_task_info.cc \ ../graph/load/model_manager/task_info/label_set_task_info.cc \
../graph/load/new_model_manager/task_info/label_switch_by_index_task_info.cc \ ../graph/load/model_manager/task_info/label_switch_by_index_task_info.cc \
../graph/load/new_model_manager/task_info/label_goto_ex_task_info.cc \ ../graph/load/model_manager/task_info/label_goto_ex_task_info.cc \
../graph/load/new_model_manager/task_info/memcpy_async_task_info.cc \ ../graph/load/model_manager/task_info/memcpy_async_task_info.cc \
../graph/load/new_model_manager/task_info/memcpy_addr_async_task_info.cc \ ../graph/load/model_manager/task_info/memcpy_addr_async_task_info.cc \
../graph/load/new_model_manager/task_info/profiler_trace_task_info.cc \ ../graph/load/model_manager/task_info/profiler_trace_task_info.cc \
../graph/load/new_model_manager/task_info/stream_active_task_info.cc \ ../graph/load/model_manager/task_info/stream_active_task_info.cc \
../graph/load/new_model_manager/task_info/stream_switch_task_info.cc \ ../graph/load/model_manager/task_info/stream_switch_task_info.cc \
../graph/load/new_model_manager/task_info/stream_switchn_task_info.cc \ ../graph/load/model_manager/task_info/stream_switchn_task_info.cc \
../graph/load/new_model_manager/task_info/end_graph_task_info.cc \ ../graph/load/model_manager/task_info/end_graph_task_info.cc \
../graph/load/new_model_manager/task_info/model_exit_task_info.cc \ ../graph/load/model_manager/task_info/model_exit_task_info.cc \
../graph/load/new_model_manager/task_info/super_kernel/super_kernel_factory.cc \ ../graph/load/model_manager/task_info/super_kernel/super_kernel_factory.cc \
../graph/load/new_model_manager/task_info/super_kernel/super_kernel.cc \ ../graph/load/model_manager/task_info/super_kernel/super_kernel.cc \
../opskernel_manager/ops_kernel_builder_manager.cc \ ../opskernel_manager/ops_kernel_builder_manager.cc \
../single_op/single_op_manager.cc \ ../single_op/single_op_manager.cc \
../single_op/single_op_model.cc \ ../single_op/single_op_model.cc \
@ -95,6 +95,7 @@ local_ge_executor_src_files := \
../hybrid/node_executor/host_cpu/kernel/variable_kernel.cc \ ../hybrid/node_executor/host_cpu/kernel/variable_kernel.cc \
../hybrid/node_executor/host_cpu/kernel/assign_kernel.cc \ ../hybrid/node_executor/host_cpu/kernel/assign_kernel.cc \
../hybrid/node_executor/host_cpu/kernel/random_uniform_kernel.cc \ ../hybrid/node_executor/host_cpu/kernel/random_uniform_kernel.cc \
../hybrid/node_executor/host_cpu/kernel/data_kernel.cc \
../hybrid/node_executor/controlop/control_op_executor.cc \ ../hybrid/node_executor/controlop/control_op_executor.cc \
../hybrid/node_executor/partitioned_call/partitioned_call_node_executor.cc \ ../hybrid/node_executor/partitioned_call/partitioned_call_node_executor.cc \
../hybrid/node_executor/rts/rts_node_executor.cc \ ../hybrid/node_executor/rts/rts_node_executor.cc \

@ -57,6 +57,7 @@ message TaskDef {
LabelSetDef label_set = 37; LabelSetDef label_set = 37;
LabelGotoExDef label_goto_ex = 38; LabelGotoExDef label_goto_ex = 38;
LabelSwitchByIndexDef label_switch_by_index = 39; LabelSwitchByIndexDef label_switch_by_index = 39;
KernelDefWithHandle kernel_with_handle = 40;
} }
message KernelDef { message KernelDef {
@ -74,6 +75,19 @@ message KernelDef {
uint32 kernel_ext_info_size = 19; uint32 kernel_ext_info_size = 19;
} }
message KernelDefWithHandle {
KernelContext context = 1;
uint64 handle = 10;
string dev_func = 11;
uint32 block_dim = 12;
uint32 args_size = 13;
bytes args = 14;
bytes sm_desc = 15;
string original_kernel_key = 16;
string node_info = 17;
}
message KernelContext { message KernelContext {
uint32 kernel_type = 1; uint32 kernel_type = 1;
uint32 op_id = 2; // OP type in CCE uint32 op_id = 2; // OP type in CCE

@ -228,37 +228,37 @@ OME_HOST_SRC_FILES := \
graph/manager/util/rt_context_util.cc \ graph/manager/util/rt_context_util.cc \
graph/manager/util/variable_accelerate_ctrl.cc \ graph/manager/util/variable_accelerate_ctrl.cc \
graph/manager/util/debug.cc \ graph/manager/util/debug.cc \
graph/load/new_model_manager/model_manager.cc \ graph/load/model_manager/model_manager.cc \
graph/load/new_model_manager/data_inputer.cc \ graph/load/model_manager/data_inputer.cc \
graph/load/new_model_manager/davinci_model.cc \ graph/load/model_manager/davinci_model.cc \
graph/load/new_model_manager/davinci_model_parser.cc \ graph/load/model_manager/davinci_model_parser.cc \
graph/load/new_model_manager/model_utils.cc \ graph/load/model_manager/model_utils.cc \
graph/load/new_model_manager/aipp_utils.cc \ graph/load/model_manager/aipp_utils.cc \
graph/load/new_model_manager/tbe_handle_store.cc \ graph/load/model_manager/tbe_handle_store.cc \
graph/load/new_model_manager/cpu_queue_schedule.cc \ graph/load/model_manager/cpu_queue_schedule.cc \
graph/load/new_model_manager/zero_copy_task.cc \ graph/load/model_manager/zero_copy_task.cc \
graph/load/new_model_manager/zero_copy_offset.cc \ graph/load/model_manager/zero_copy_offset.cc \
graph/load/new_model_manager/data_dumper.cc \ graph/load/model_manager/data_dumper.cc \
graph/load/new_model_manager/task_info/task_info.cc \ graph/load/model_manager/task_info/task_info.cc \
graph/load/new_model_manager/task_info/event_record_task_info.cc \ graph/load/model_manager/task_info/event_record_task_info.cc \
graph/load/new_model_manager/task_info/event_wait_task_info.cc \ graph/load/model_manager/task_info/event_wait_task_info.cc \
graph/load/new_model_manager/task_info/fusion_start_task_info.cc \ graph/load/model_manager/task_info/fusion_start_task_info.cc \
graph/load/new_model_manager/task_info/fusion_stop_task_info.cc \ graph/load/model_manager/task_info/fusion_stop_task_info.cc \
graph/load/new_model_manager/task_info/kernel_ex_task_info.cc \ graph/load/model_manager/task_info/kernel_ex_task_info.cc \
graph/load/new_model_manager/task_info/kernel_task_info.cc \ graph/load/model_manager/task_info/kernel_task_info.cc \
graph/load/new_model_manager/task_info/label_set_task_info.cc \ graph/load/model_manager/task_info/label_set_task_info.cc \
graph/load/new_model_manager/task_info/label_switch_by_index_task_info.cc \ graph/load/model_manager/task_info/label_switch_by_index_task_info.cc \
graph/load/new_model_manager/task_info/label_goto_ex_task_info.cc \ graph/load/model_manager/task_info/label_goto_ex_task_info.cc \
graph/load/new_model_manager/task_info/memcpy_async_task_info.cc \ graph/load/model_manager/task_info/memcpy_async_task_info.cc \
graph/load/new_model_manager/task_info/memcpy_addr_async_task_info.cc \ graph/load/model_manager/task_info/memcpy_addr_async_task_info.cc \
graph/load/new_model_manager/task_info/profiler_trace_task_info.cc \ graph/load/model_manager/task_info/profiler_trace_task_info.cc \
graph/load/new_model_manager/task_info/stream_active_task_info.cc \ graph/load/model_manager/task_info/stream_active_task_info.cc \
graph/load/new_model_manager/task_info/stream_switch_task_info.cc \ graph/load/model_manager/task_info/stream_switch_task_info.cc \
graph/load/new_model_manager/task_info/stream_switchn_task_info.cc \ graph/load/model_manager/task_info/stream_switchn_task_info.cc \
graph/load/new_model_manager/task_info/end_graph_task_info.cc \ graph/load/model_manager/task_info/end_graph_task_info.cc \
graph/load/new_model_manager/task_info/model_exit_task_info.cc \ graph/load/model_manager/task_info/model_exit_task_info.cc \
graph/load/new_model_manager/task_info/super_kernel/super_kernel_factory.cc \ graph/load/model_manager/task_info/super_kernel/super_kernel_factory.cc \
graph/load/new_model_manager/task_info/super_kernel/super_kernel.cc \ graph/load/model_manager/task_info/super_kernel/super_kernel.cc \
single_op/task/op_task.cc \ single_op/task/op_task.cc \
single_op/task/build_task_utils.cc \ single_op/task/build_task_utils.cc \
single_op/task/tbe_task_builder.cc \ single_op/task/tbe_task_builder.cc \
@ -270,7 +270,7 @@ OME_HOST_SRC_FILES := \
single_op/single_op_manager.cc \ single_op/single_op_manager.cc \
hybrid/hybrid_davinci_model_stub.cc \ hybrid/hybrid_davinci_model_stub.cc \
hybrid/node_executor/aicpu/aicpu_ext_info.cc \ hybrid/node_executor/aicpu/aicpu_ext_info.cc \
# graph/load/new_model_manager/task_info/hccl_task_info.cc # graph/load/model_manager/task_info/hccl_task_info.cc
OME_DEVICE_SRC_FILES := $(OME_HOST_SRC_FILES) OME_DEVICE_SRC_FILES := $(OME_HOST_SRC_FILES)

@ -33,7 +33,7 @@ namespace {
uint64_t size = data_num * sizeof(TYPE); \ uint64_t size = data_num * sizeof(TYPE); \
ge_tensor = MakeShared<GeTensor>(out_desc, size); \ ge_tensor = MakeShared<GeTensor>(out_desc, size); \
GE_CHECK_NOTNULL(ge_tensor); \ GE_CHECK_NOTNULL(ge_tensor); \
GELOGD("node:%s allocate output %zu success, size=%lld", op_desc->GetName().c_str(), i, size); \ GELOGD("node:%s allocate output %zu success, size=%ld", op_desc->GetName().c_str(), i, size); \
ge_tensor->MutableTensorDesc().SetDataType(out_desc.GetDataType()); \ ge_tensor->MutableTensorDesc().SetDataType(out_desc.GetDataType()); \
ge_tensor->MutableTensorDesc().SetShape(out_desc.GetShape()); \ ge_tensor->MutableTensorDesc().SetShape(out_desc.GetShape()); \
} else { \ } else { \
@ -72,7 +72,7 @@ Status GetDataNumber(const GeTensorDesc &out_desc, uint64_t &data_num) {
num_size = max_range_size; num_size = max_range_size;
} }
if (num_size < 0) { if (num_size < 0) {
GELOGE(INTERNAL_ERROR, "Get negative size, num_size=%lld.", num_size); GELOGE(INTERNAL_ERROR, "Get negative size, num_size=%ld.", num_size);
return INTERNAL_ERROR; return INTERNAL_ERROR;
} }
data_num = static_cast<uint64_t>(num_size); data_num = static_cast<uint64_t>(num_size);

@ -57,6 +57,7 @@ message TaskDef {
LabelSetDef label_set = 37; LabelSetDef label_set = 37;
LabelGotoExDef label_goto_ex = 38; LabelGotoExDef label_goto_ex = 38;
LabelSwitchByIndexDef label_switch_by_index = 39; LabelSwitchByIndexDef label_switch_by_index = 39;
KernelDefWithHandle kernel_with_handle = 40;
} }
message KernelDef { message KernelDef {
@ -74,6 +75,19 @@ message KernelDef {
uint32 kernel_ext_info_size = 19; uint32 kernel_ext_info_size = 19;
} }
message KernelDefWithHandle {
KernelContext context = 1;
uint64 handle = 10;
string dev_func = 11;
uint32 block_dim = 12;
uint32 args_size = 13;
bytes args = 14;
bytes sm_desc = 15;
string original_kernel_key = 16;
string node_info = 17;
}
message KernelContext { message KernelContext {
uint32 kernel_type = 1; uint32 kernel_type = 1;
uint32 op_id = 2; // OP type in CCE uint32 op_id = 2; // OP type in CCE

@ -54,38 +54,38 @@ LIBGE_LOCAL_SRC_FILES := \
graph/label/partitioned_call_label_maker.cc \ graph/label/partitioned_call_label_maker.cc \
graph/label/while_label_maker.cc \ graph/label/while_label_maker.cc \
graph/load/graph_loader.cc \ graph/load/graph_loader.cc \
graph/load/new_model_manager/cpu_queue_schedule.cc \ graph/load/model_manager/cpu_queue_schedule.cc \
graph/load/new_model_manager/data_dumper.cc \ graph/load/model_manager/data_dumper.cc \
graph/load/new_model_manager/data_inputer.cc \ graph/load/model_manager/data_inputer.cc \
graph/load/new_model_manager/davinci_model.cc \ graph/load/model_manager/davinci_model.cc \
graph/load/new_model_manager/davinci_model_parser.cc \ graph/load/model_manager/davinci_model_parser.cc \
graph/load/new_model_manager/model_manager.cc \ graph/load/model_manager/model_manager.cc \
graph/load/new_model_manager/model_utils.cc \ graph/load/model_manager/model_utils.cc \
graph/load/new_model_manager/aipp_utils.cc \ graph/load/model_manager/aipp_utils.cc \
graph/load/new_model_manager/task_info/end_graph_task_info.cc \ graph/load/model_manager/task_info/end_graph_task_info.cc \
graph/load/new_model_manager/task_info/model_exit_task_info.cc \ graph/load/model_manager/task_info/model_exit_task_info.cc \
graph/load/new_model_manager/task_info/event_record_task_info.cc \ graph/load/model_manager/task_info/event_record_task_info.cc \
graph/load/new_model_manager/task_info/event_wait_task_info.cc \ graph/load/model_manager/task_info/event_wait_task_info.cc \
graph/load/new_model_manager/task_info/fusion_start_task_info.cc \ graph/load/model_manager/task_info/fusion_start_task_info.cc \
graph/load/new_model_manager/task_info/fusion_stop_task_info.cc \ graph/load/model_manager/task_info/fusion_stop_task_info.cc \
graph/load/new_model_manager/task_info/hccl_task_info.cc \ graph/load/model_manager/task_info/hccl_task_info.cc \
graph/load/new_model_manager/task_info/kernel_ex_task_info.cc \ graph/load/model_manager/task_info/kernel_ex_task_info.cc \
graph/load/new_model_manager/task_info/kernel_task_info.cc \ graph/load/model_manager/task_info/kernel_task_info.cc \
graph/load/new_model_manager/task_info/label_set_task_info.cc \ graph/load/model_manager/task_info/label_set_task_info.cc \
graph/load/new_model_manager/task_info/label_switch_by_index_task_info.cc \ graph/load/model_manager/task_info/label_switch_by_index_task_info.cc \
graph/load/new_model_manager/task_info/label_goto_ex_task_info.cc \ graph/load/model_manager/task_info/label_goto_ex_task_info.cc \
graph/load/new_model_manager/task_info/memcpy_addr_async_task_info.cc \ graph/load/model_manager/task_info/memcpy_addr_async_task_info.cc \
graph/load/new_model_manager/task_info/memcpy_async_task_info.cc \ graph/load/model_manager/task_info/memcpy_async_task_info.cc \
graph/load/new_model_manager/task_info/profiler_trace_task_info.cc \ graph/load/model_manager/task_info/profiler_trace_task_info.cc \
graph/load/new_model_manager/task_info/stream_active_task_info.cc \ graph/load/model_manager/task_info/stream_active_task_info.cc \
graph/load/new_model_manager/task_info/stream_switch_task_info.cc \ graph/load/model_manager/task_info/stream_switch_task_info.cc \
graph/load/new_model_manager/task_info/stream_switchn_task_info.cc \ graph/load/model_manager/task_info/stream_switchn_task_info.cc \
graph/load/new_model_manager/task_info/super_kernel/super_kernel.cc \ graph/load/model_manager/task_info/super_kernel/super_kernel.cc \
graph/load/new_model_manager/task_info/super_kernel/super_kernel_factory.cc \ graph/load/model_manager/task_info/super_kernel/super_kernel_factory.cc \
graph/load/new_model_manager/task_info/task_info.cc \ graph/load/model_manager/task_info/task_info.cc \
graph/load/new_model_manager/tbe_handle_store.cc \ graph/load/model_manager/tbe_handle_store.cc \
graph/load/new_model_manager/zero_copy_task.cc \ graph/load/model_manager/zero_copy_task.cc \
graph/load/new_model_manager/zero_copy_offset.cc \ graph/load/model_manager/zero_copy_offset.cc \
graph/manager/graph_context.cc \ graph/manager/graph_context.cc \
graph/manager/graph_manager.cc \ graph/manager/graph_manager.cc \
graph/manager/graph_manager_utils.cc \ graph/manager/graph_manager_utils.cc \
@ -300,6 +300,7 @@ LIBGE_LOCAL_SRC_FILES := \
hybrid/node_executor/host_cpu/kernel/variable_kernel.cc \ hybrid/node_executor/host_cpu/kernel/variable_kernel.cc \
hybrid/node_executor/host_cpu/kernel/assign_kernel.cc \ hybrid/node_executor/host_cpu/kernel/assign_kernel.cc \
hybrid/node_executor/host_cpu/kernel/random_uniform_kernel.cc \ hybrid/node_executor/host_cpu/kernel/random_uniform_kernel.cc \
hybrid/node_executor/host_cpu/kernel/data_kernel.cc \
hybrid/node_executor/controlop/control_op_executor.cc \ hybrid/node_executor/controlop/control_op_executor.cc \
hybrid/node_executor/partitioned_call/partitioned_call_node_executor.cc \ hybrid/node_executor/partitioned_call/partitioned_call_node_executor.cc \
hybrid/node_executor/hccl/hccl_node_executor.cc \ hybrid/node_executor/hccl/hccl_node_executor.cc \

@ -187,8 +187,7 @@ Status GraphBuilder::UpdateParentNodeOutputSize(const ge::ComputeGraphPtr &graph
return SUCCESS; return SUCCESS;
} }
Status GraphBuilder::Build(ComputeGraphPtr &comp_graph, std::vector<SubGraphInfoPtr> &subgraph_ptr_list, Status GraphBuilder::Build(ComputeGraphPtr &comp_graph, GeRootModelPtr &ge_root_model_ptr, uint64_t session_id) {
GeRootModelPtr &ge_root_model_ptr, uint64_t session_id) {
if (comp_graph == nullptr) { if (comp_graph == nullptr) {
GELOGE(GE_GRAPH_PARAM_NULLPTR, "Graph build comp_graph is null."); GELOGE(GE_GRAPH_PARAM_NULLPTR, "Graph build comp_graph is null.");
return GE_GRAPH_PARAM_NULLPTR; return GE_GRAPH_PARAM_NULLPTR;
@ -203,18 +202,18 @@ Status GraphBuilder::Build(ComputeGraphPtr &comp_graph, std::vector<SubGraphInfo
(void)AttrUtils::GetBool(comp_graph, ATTR_NAME_DYNAMIC_SHAPE_PARTITIONED, is_dynamic_shape); (void)AttrUtils::GetBool(comp_graph, ATTR_NAME_DYNAMIC_SHAPE_PARTITIONED, is_dynamic_shape);
if (is_dynamic_shape || comp_graph->GetGraphUnknownFlag()) { if (is_dynamic_shape || comp_graph->GetGraphUnknownFlag()) {
GE_CHK_STATUS_RET( GE_CHK_STATUS_RET(
BuildForDynamicShapeGraph(comp_graph, subgraph_ptr_list, ge_root_model_ptr, ge_model_ptr, session_id), BuildForDynamicShapeGraph(comp_graph, ge_root_model_ptr, ge_model_ptr, session_id),
"Build for dynamic shape graph failed."); "Build for dynamic shape graph failed.");
return SUCCESS; return SUCCESS;
} }
GE_CHK_STATUS_RET(BuildForKnownShapeGraph(comp_graph, subgraph_ptr_list, ge_model_ptr, session_id), GE_CHK_STATUS_RET(BuildForKnownShapeGraph(comp_graph, ge_model_ptr, session_id),
"Build for known shape graph failed."); "Build for known shape graph failed.");
ge_root_model_ptr->SetSubgraphInstanceNameToModel(comp_graph->GetName(), ge_model_ptr); ge_root_model_ptr->SetSubgraphInstanceNameToModel(comp_graph->GetName(), ge_model_ptr);
return SUCCESS; return SUCCESS;
} }
Status GraphBuilder::BuildForKnownShapeGraph(ComputeGraphPtr &comp_graph, std::vector<SubGraphInfoPtr> &subgraph_list, Status GraphBuilder::BuildForKnownShapeGraph(ComputeGraphPtr &comp_graph,
GeModelPtr &ge_model_ptr, uint64_t session_id) { GeModelPtr &ge_model_ptr, uint64_t session_id) {
if (ge::GetContext().GetHostExecFlag()) { if (ge::GetContext().GetHostExecFlag()) {
GE_CHK_STATUS_RET(BuildForHostCpuGraph(comp_graph, ge_model_ptr, session_id), "Build for host-cpu graph failed."); GE_CHK_STATUS_RET(BuildForHostCpuGraph(comp_graph, ge_model_ptr, session_id), "Build for host-cpu graph failed.");
@ -222,7 +221,7 @@ Status GraphBuilder::BuildForKnownShapeGraph(ComputeGraphPtr &comp_graph, std::v
} }
GELOGI("Begin to build known shape graph[%s].", comp_graph->GetName().c_str()); GELOGI("Begin to build known shape graph[%s].", comp_graph->GetName().c_str());
Status ret = SecondPartition(comp_graph, subgraph_list); Status ret = SecondPartition(comp_graph);
GE_CHK_STATUS_RET(ret, "Graph[%s] second partition Failed.", comp_graph->GetName().c_str()); GE_CHK_STATUS_RET(ret, "Graph[%s] second partition Failed.", comp_graph->GetName().c_str());
auto subgraph_map = graph_partitioner_.GetSubGraphMap(); auto subgraph_map = graph_partitioner_.GetSubGraphMap();
@ -470,7 +469,6 @@ Status GraphBuilder::MarkFpBpProfilingTaskAttr(ComputeGraphPtr &com_graph) {
} }
Status GraphBuilder::BuildForDynamicShapeGraph(ComputeGraphPtr &comp_graph, Status GraphBuilder::BuildForDynamicShapeGraph(ComputeGraphPtr &comp_graph,
std::vector<SubGraphInfoPtr> &subgraph_ptr_list,
GeRootModelPtr &ge_root_model_ptr, GeModelPtr &ge_model_ptr, GeRootModelPtr &ge_root_model_ptr, GeModelPtr &ge_model_ptr,
uint64_t session_id) { uint64_t session_id) {
GELOGI("Start to build BuildForDynamicShape for dynamic shape."); GELOGI("Start to build BuildForDynamicShape for dynamic shape.");
@ -517,7 +515,7 @@ Status GraphBuilder::BuildForDynamicShapeGraph(ComputeGraphPtr &comp_graph,
} }
} }
// known shape build flow // known shape build flow
GE_CHK_STATUS_RET(BuildForKnownShapeGraph(sub_graph, subgraph_ptr_list, ge_model_ptr, session_id), GE_CHK_STATUS_RET(BuildForKnownShapeGraph(sub_graph, ge_model_ptr, session_id),
"Build for known shape graph failed."); "Build for known shape graph failed.");
} }
ge_root_model_ptr->SetSubgraphInstanceNameToModel(sub_graph->GetName(), ge_model_ptr); ge_root_model_ptr->SetSubgraphInstanceNameToModel(sub_graph->GetName(), ge_model_ptr);
@ -719,7 +717,7 @@ Status GraphBuilder::CalcDynShapeRootGraphDataSize(const ge::OpDescPtr &op_desc)
return SUCCESS; return SUCCESS;
} }
Status GraphBuilder::SecondPartition(ge::ComputeGraphPtr &comp_graph, vector<ge::SubGraphInfoPtr> &subgraph_ptr_list) { Status GraphBuilder::SecondPartition(ge::ComputeGraphPtr &comp_graph) {
GE_TIMESTAMP_START(GraphPartition2); GE_TIMESTAMP_START(GraphPartition2);
auto ret = graph_partitioner_.Partition(comp_graph, GraphPartitioner::kSecondPartitioning); auto ret = graph_partitioner_.Partition(comp_graph, GraphPartitioner::kSecondPartitioning);
if (ret != SUCCESS) { if (ret != SUCCESS) {
@ -727,10 +725,8 @@ Status GraphBuilder::SecondPartition(ge::ComputeGraphPtr &comp_graph, vector<ge:
return ret; return ret;
} }
GE_CHK_STATUS_RET(ret, "Graph partition Failed."); GE_CHK_STATUS_RET(ret, "Graph partition Failed.");
auto graph_2_subgraphlist = graph_partitioner_.GetSubGraphMap(); const auto &graph_2_subgraphlist = graph_partitioner_.GetSubGraphMap();
if (graph_2_subgraphlist.find(comp_graph) != graph_2_subgraphlist.end()) { if (graph_2_subgraphlist.find(comp_graph) == graph_2_subgraphlist.end()) {
subgraph_ptr_list = graph_2_subgraphlist[comp_graph];
} else {
GELOGE(FAILED, "Find subgraph failed."); GELOGE(FAILED, "Find subgraph failed.");
return FAILED; return FAILED;
} }
@ -745,7 +741,7 @@ Status GraphBuilder::AddOutputMemTypeForNode(const NodePtr &node) {
if (!AttrUtils::GetInt(op_desc, ATTR_INPUT_MEMORY_TYPE, mem_type)) { if (!AttrUtils::GetInt(op_desc, ATTR_INPUT_MEMORY_TYPE, mem_type)) {
return SUCCESS; return SUCCESS;
} }
GELOGD("[%s] has attr input_memory_type %ld", op_desc->GetName().c_str(), mem_type); GELOGD("[%s] has attr input_memory_type %u", op_desc->GetName().c_str(), mem_type);
for (const auto &in_data_anchor : node->GetAllInDataAnchors()) { for (const auto &in_data_anchor : node->GetAllInDataAnchors()) {
const auto &peer_out_anchor = in_data_anchor->GetPeerOutAnchor(); const auto &peer_out_anchor = in_data_anchor->GetPeerOutAnchor();
GE_IF_BOOL_EXEC(peer_out_anchor == nullptr, continue); GE_IF_BOOL_EXEC(peer_out_anchor == nullptr, continue);
@ -755,7 +751,7 @@ Status GraphBuilder::AddOutputMemTypeForNode(const NodePtr &node) {
while (true) { while (true) {
const auto &src_desc = src_node->GetOpDesc(); const auto &src_desc = src_node->GetOpDesc();
GE_IF_BOOL_EXEC(src_desc == nullptr, continue); GE_IF_BOOL_EXEC(src_desc == nullptr, continue);
GELOGD("[%s:%u] set attr output_memory_type %ld", src_desc->GetName().c_str(), src_out_anchor->GetIdx(), GELOGD("[%s:%u] set attr output_memory_type %d", src_desc->GetName().c_str(), src_out_anchor->GetIdx(),
mem_type); mem_type);
if (!AttrUtils::SetInt(src_desc->MutableOutputDesc(src_out_anchor->GetIdx()), ATTR_OUTPUT_MEMORY_TYPE, if (!AttrUtils::SetInt(src_desc->MutableOutputDesc(src_out_anchor->GetIdx()), ATTR_OUTPUT_MEMORY_TYPE,
mem_type)) { mem_type)) {

@ -47,8 +47,7 @@ class GraphBuilder {
GraphBuilder(const GraphBuilder &in) = delete; GraphBuilder(const GraphBuilder &in) = delete;
GraphBuilder &operator=(const GraphBuilder &in) = delete; GraphBuilder &operator=(const GraphBuilder &in) = delete;
virtual ~GraphBuilder() = default; virtual ~GraphBuilder() = default;
Status Build(ComputeGraphPtr &comp_graph, std::vector<SubGraphInfoPtr> &subgraph_ptr_list, Status Build(ComputeGraphPtr &comp_graph, GeRootModelPtr &ge_model_ptr, uint64_t session_id = INVALID_SESSION_ID);
GeRootModelPtr &ge_model_ptr, uint64_t session_id = INVALID_SESSION_ID);
void SetOptions(const GraphManagerOptions &options); void SetOptions(const GraphManagerOptions &options);
private: private:
@ -59,12 +58,12 @@ class GraphBuilder {
Status UpdateDataInputSize(const ge::NodePtr &node_ptr); Status UpdateDataInputSize(const ge::NodePtr &node_ptr);
Status UpdateParentNodeOutputSize(const ge::ComputeGraphPtr &graph, ge::NodePtr &parent_node_ptr); Status UpdateParentNodeOutputSize(const ge::ComputeGraphPtr &graph, ge::NodePtr &parent_node_ptr);
Status CalcDynShapeRootGraphDataSize(const ge::OpDescPtr &op_desc); Status CalcDynShapeRootGraphDataSize(const ge::OpDescPtr &op_desc);
Status SecondPartition(ge::ComputeGraphPtr &comp_graph, vector<ge::SubGraphInfoPtr> &subgraph_ptr_list); Status SecondPartition(ge::ComputeGraphPtr &comp_graph);
Status MarkFpBpProfilingTaskAttr(ComputeGraphPtr &com_graph); Status MarkFpBpProfilingTaskAttr(ComputeGraphPtr &com_graph);
Status BuildForDynamicShapeGraph(ComputeGraphPtr &comp_graph, std::vector<SubGraphInfoPtr> &subgraph_ptr_list, Status BuildForDynamicShapeGraph(ComputeGraphPtr &comp_graph,
GeRootModelPtr &ge_root_model_ptr, GeModelPtr &ge_model_ptr, GeRootModelPtr &ge_root_model_ptr, GeModelPtr &ge_model_ptr,
uint64_t session_id = INVALID_SESSION_ID); uint64_t session_id = INVALID_SESSION_ID);
Status BuildForKnownShapeGraph(ComputeGraphPtr &comp_graph, std::vector<SubGraphInfoPtr> &subgraph_list, Status BuildForKnownShapeGraph(ComputeGraphPtr &comp_graph,
GeModelPtr &ge_model_ptr, uint64_t session_id = INVALID_SESSION_ID); GeModelPtr &ge_model_ptr, uint64_t session_id = INVALID_SESSION_ID);
Status BuildForUnknownShapeGraph(ComputeGraphPtr &comp_graph, GeModelPtr &ge_model_ptr, Status BuildForUnknownShapeGraph(ComputeGraphPtr &comp_graph, GeModelPtr &ge_model_ptr,
uint64_t session_id = INVALID_SESSION_ID); uint64_t session_id = INVALID_SESSION_ID);

@ -69,8 +69,8 @@ Status BinaryBlockMemAssigner::GetMemoryRanges(vector<int64_t> &range_ceils) {
GELOGW("Vector all_memory_size is empty!"); GELOGW("Vector all_memory_size is empty!");
return SUCCESS; return SUCCESS;
} }
if ((all_memory_size.front() <= 0) || (log(kLogBase) == 0)) { if ((all_memory_size.front() == 0) || (log(kLogBase) == 0)) {
GELOGE(FAILED, "Memory size:%ld is invalid.", all_memory_size.front()); GELOGE(FAILED, "dividend is 0!");
return FAILED; return FAILED;
} }
// Memory size is 512 aligned, so it is not necessary to take less than 512 // Memory size is 512 aligned, so it is not necessary to take less than 512

File diff suppressed because it is too large Load Diff

Some files were not shown because too many files have changed in this diff Show More

Loading…
Cancel
Save