@@ -99,8 +99,8 @@ Status DumpOp::DumpOutput(aicpu::dump::Task &task) { | |||||
} | } | ||||
int64_t output_size = 0; | int64_t output_size = 0; | ||||
if (TensorUtils::GetTensorSizeInBytes(output_descs.at(i), output_size) != SUCCESS) { | if (TensorUtils::GetTensorSizeInBytes(output_descs.at(i), output_size) != SUCCESS) { | ||||
GELOGE(PARAM_INVALID, "Get output size filed"); | |||||
return PARAM_INVALID; | |||||
GELOGE(ACL_ERROR_GE_DUMP_GET_TENSOR_SIZE_FAILED, "Get output size filed"); | |||||
return ACL_ERROR_GE_DUMP_GET_TENSOR_SIZE_FAILED; | |||||
} | } | ||||
GELOGD("Get output size in lanch dump op is %ld", output_size); | GELOGD("Get output size in lanch dump op is %ld", output_size); | ||||
output.set_size(output_size); | output.set_size(output_size); | ||||
@@ -126,8 +126,8 @@ Status DumpOp::DumpInput(aicpu::dump::Task &task) { | |||||
} | } | ||||
int64_t input_size = 0; | int64_t input_size = 0; | ||||
if (TensorUtils::GetTensorSizeInBytes(input_descs.at(i), input_size) != SUCCESS) { | if (TensorUtils::GetTensorSizeInBytes(input_descs.at(i), input_size) != SUCCESS) { | ||||
GELOGE(PARAM_INVALID, "Get output size filed"); | |||||
return PARAM_INVALID; | |||||
GELOGE(ACL_ERROR_GE_DUMP_GET_TENSOR_SIZE_FAILED, "Get output size filed"); | |||||
return ACL_ERROR_GE_DUMP_GET_TENSOR_SIZE_FAILED; | |||||
} | } | ||||
GELOGD("Get input size in lanch dump op is %ld", input_size); | GELOGD("Get input size in lanch dump op is %ld", input_size); | ||||
input.set_size(input_size); | input.set_size(input_size); | ||||
@@ -151,31 +151,31 @@ Status DumpOp::ExecutorDumpOp(aicpu::dump::OpMappingInfo &op_mapping_info) { | |||||
size_t proto_size = op_mapping_info.ByteSizeLong(); | size_t proto_size = op_mapping_info.ByteSizeLong(); | ||||
bool ret = op_mapping_info.SerializeToString(&proto_msg); | bool ret = op_mapping_info.SerializeToString(&proto_msg); | ||||
if (!ret || proto_size == 0) { | if (!ret || proto_size == 0) { | ||||
GELOGE(FAILED, "Protobuf serialize failed,proto_size is %zu", proto_size); | |||||
return FAILED; | |||||
GELOGE(ACL_ERROR_GE_DUMP_PROTOBUF_SERIALIZE_FAILED, "Protobuf serialize failed, proto_size is %zu", proto_size); | |||||
return ACL_ERROR_GE_DUMP_PROTOBUF_SERIALIZE_FAILED; | |||||
} | } | ||||
rtError_t rt_ret = rtMalloc(&proto_dev_mem_, proto_size, RT_MEMORY_HBM); | rtError_t rt_ret = rtMalloc(&proto_dev_mem_, proto_size, RT_MEMORY_HBM); | ||||
if (rt_ret != RT_ERROR_NONE) { | if (rt_ret != RT_ERROR_NONE) { | ||||
GELOGE(RT_FAILED, "Call rtMalloc failed, ret: 0x%X", rt_ret); | |||||
return RT_FAILED; | |||||
GELOGE(rt_ret, "Call rtMalloc failed, ret: 0x%X", rt_ret); | |||||
return RT_ERROR_TO_GE_STATUS(rt_ret); | |||||
} | } | ||||
rt_ret = rtMemcpy(proto_dev_mem_, proto_size, proto_msg.c_str(), proto_size, RT_MEMCPY_HOST_TO_DEVICE); | rt_ret = rtMemcpy(proto_dev_mem_, proto_size, proto_msg.c_str(), proto_size, RT_MEMCPY_HOST_TO_DEVICE); | ||||
if (rt_ret != RT_ERROR_NONE) { | if (rt_ret != RT_ERROR_NONE) { | ||||
GELOGE(RT_FAILED, "Call rtMemcpy failed, ret: 0x%X", rt_ret); | |||||
return RT_FAILED; | |||||
GELOGE(rt_ret, "Call rtMemcpy failed, ret: 0x%X", rt_ret); | |||||
return RT_ERROR_TO_GE_STATUS(rt_ret); | |||||
} | } | ||||
rt_ret = rtMalloc(&proto_size_dev_mem_, sizeof(size_t), RT_MEMORY_HBM); | rt_ret = rtMalloc(&proto_size_dev_mem_, sizeof(size_t), RT_MEMORY_HBM); | ||||
if (rt_ret != RT_ERROR_NONE) { | if (rt_ret != RT_ERROR_NONE) { | ||||
GELOGE(RT_FAILED, "Call rtMalloc failed, ret: 0x%X", rt_ret); | |||||
return RT_FAILED; | |||||
GELOGE(rt_ret, "Call rtMalloc failed, ret: 0x%X", rt_ret); | |||||
return RT_ERROR_TO_GE_STATUS(rt_ret); | |||||
} | } | ||||
rt_ret = rtMemcpy(proto_size_dev_mem_, sizeof(size_t), &proto_size, sizeof(size_t), RT_MEMCPY_HOST_TO_DEVICE); | rt_ret = rtMemcpy(proto_size_dev_mem_, sizeof(size_t), &proto_size, sizeof(size_t), RT_MEMCPY_HOST_TO_DEVICE); | ||||
if (rt_ret != RT_ERROR_NONE) { | if (rt_ret != RT_ERROR_NONE) { | ||||
GELOGE(RT_FAILED, "Call rtMemcpy failed, ret: 0x%X", rt_ret); | |||||
return RT_FAILED; | |||||
GELOGE(rt_ret, "Call rtMemcpy failed, ret: 0x%X", rt_ret); | |||||
return RT_ERROR_TO_GE_STATUS(rt_ret); | |||||
} | } | ||||
constexpr int32_t io_addr_num = 2; | constexpr int32_t io_addr_num = 2; | ||||
@@ -193,8 +193,8 @@ Status DumpOp::ExecutorDumpOp(aicpu::dump::OpMappingInfo &op_mapping_info) { | |||||
nullptr, // no need smDesc | nullptr, // no need smDesc | ||||
stream_); | stream_); | ||||
if (rt_ret != RT_ERROR_NONE) { | if (rt_ret != RT_ERROR_NONE) { | ||||
GELOGE(RT_FAILED, "Call rtCpuKernelLaunch failed,rt_ret:0x%X", rt_ret); | |||||
return rt_ret; | |||||
GELOGE(rt_ret, "Call rtCpuKernelLaunch failed,rt_ret:0x%X", rt_ret); | |||||
return RT_ERROR_TO_GE_STATUS(rt_ret); | |||||
} | } | ||||
GELOGI("Kernel launch dump op success"); | GELOGI("Kernel launch dump op success"); | ||||
return SUCCESS; | return SUCCESS; | ||||
@@ -204,9 +204,15 @@ Status DumpOp::LaunchDumpOp() { | |||||
GELOGI("Start to launch dump op %s", op_desc_->GetName().c_str()); | GELOGI("Start to launch dump op %s", op_desc_->GetName().c_str()); | ||||
int32_t device_id = 0; | int32_t device_id = 0; | ||||
rtError_t rt_ret = rtGetDevice(&device_id); | rtError_t rt_ret = rtGetDevice(&device_id); | ||||
if (rt_ret != RT_ERROR_NONE || device_id < 0) { | |||||
GELOGE(RT_FAILED, "Call rtGetDevice failed, ret = 0x%X, device_id = %d.", rt_ret, device_id); | |||||
return RT_FAILED; | |||||
if (rt_ret != RT_ERROR_NONE) { | |||||
GELOGE(rt_ret, "Call rtGetDevice failed, ret = 0x%X, device_id = %d.", rt_ret, device_id); | |||||
return RT_ERROR_TO_GE_STATUS(rt_ret); | |||||
} | |||||
if (device_id < 0) { | |||||
GELOGE(ACL_ERROR_GE_CHECK_RTS_RETURN_VALUE_FAILED, | |||||
"Check device_id failed, device_id = %d, which should be not less than 0.", | |||||
device_id); | |||||
return ACL_ERROR_GE_CHECK_RTS_RETURN_VALUE_FAILED; | |||||
} | } | ||||
aicpu::dump::OpMappingInfo op_mapping_info; | aicpu::dump::OpMappingInfo op_mapping_info; | ||||
auto dump_path = dump_properties_.GetDumpPath() + std::to_string(device_id) + "/"; | auto dump_path = dump_properties_.GetDumpPath() + std::to_string(device_id) + "/"; | ||||
@@ -232,29 +238,31 @@ Status DumpOp::LaunchDumpOp() { | |||||
task.mutable_op()->set_op_name(op_desc_->GetName()); | task.mutable_op()->set_op_name(op_desc_->GetName()); | ||||
task.mutable_op()->set_op_type(op_desc_->GetType()); | task.mutable_op()->set_op_type(op_desc_->GetType()); | ||||
if (dump_properties_.GetDumpMode() == kDumpOutput) { | if (dump_properties_.GetDumpMode() == kDumpOutput) { | ||||
if (DumpOutput(task) != SUCCESS) { | |||||
GELOGE(FAILED, "Dump output failed"); | |||||
return FAILED; | |||||
auto ret = DumpOutput(task); | |||||
if (ret != SUCCESS) { | |||||
GELOGE(ret, "Dump output failed"); | |||||
return ret; | |||||
} | } | ||||
op_mapping_info.mutable_task()->Add(std::move(task)); | op_mapping_info.mutable_task()->Add(std::move(task)); | ||||
} | } | ||||
if (dump_properties_.GetDumpMode() == kDumpInput) { | if (dump_properties_.GetDumpMode() == kDumpInput) { | ||||
if (DumpInput(task) != SUCCESS) { | |||||
GELOGE(FAILED, "Dump input failed"); | |||||
return FAILED; | |||||
auto ret = DumpInput(task); | |||||
if (ret != SUCCESS) { | |||||
GELOGE(ret, "Dump input failed"); | |||||
return ret; | |||||
} | } | ||||
op_mapping_info.mutable_task()->Add(std::move(task)); | op_mapping_info.mutable_task()->Add(std::move(task)); | ||||
} | } | ||||
if (dump_properties_.GetDumpMode() == kDumpAll) { | if (dump_properties_.GetDumpMode() == kDumpAll) { | ||||
auto ret = DumpOutput(task); | auto ret = DumpOutput(task); | ||||
if (ret != SUCCESS) { | if (ret != SUCCESS) { | ||||
GELOGE(FAILED, "Dump output failed when in dumping all"); | |||||
return FAILED; | |||||
GELOGE(ret, "Dump output failed when in dumping all"); | |||||
return ret; | |||||
} | } | ||||
ret = DumpInput(task); | ret = DumpInput(task); | ||||
if (ret != SUCCESS) { | if (ret != SUCCESS) { | ||||
GELOGE(FAILED, "Dump input failed when in dumping all"); | |||||
return FAILED; | |||||
GELOGE(ret, "Dump input failed when in dumping all"); | |||||
return ret; | |||||
} | } | ||||
op_mapping_info.mutable_task()->Add(std::move(task)); | op_mapping_info.mutable_task()->Add(std::move(task)); | ||||
} | } | ||||
@@ -162,7 +162,7 @@ Status FormatTransferC1hwncoc0Hwcn::TransFormat(const TransArgs &args, TransResu | |||||
Status FormatTransferC1hwncoc0Hwcn::TransShape(Format src_format, const std::vector<int64_t> &src_shape, | Status FormatTransferC1hwncoc0Hwcn::TransShape(Format src_format, const std::vector<int64_t> &src_shape, | ||||
DataType data_type, Format dst_format, std::vector<int64_t> &dst_shape) { | DataType data_type, Format dst_format, std::vector<int64_t> &dst_shape) { | ||||
GELOGD("The shape derivation from C1HWNCoC0 to HWCN is not unique. Trans shape in this direction is not supported"); | GELOGD("The shape derivation from C1HWNCoC0 to HWCN is not unique. Trans shape in this direction is not supported"); | ||||
return UNSUPPORTED; | |||||
return ACL_ERROR_GE_TRANSSHAPE_FORMAT_INVALID; | |||||
} | } | ||||
REGISTER_FORMAT_TRANSFER(FormatTransferC1hwncoc0Hwcn, FORMAT_C1HWNCoC0, FORMAT_HWCN) | REGISTER_FORMAT_TRANSFER(FormatTransferC1hwncoc0Hwcn, FORMAT_C1HWNCoC0, FORMAT_HWCN) | ||||
@@ -32,7 +32,7 @@ Status TransShapeToFz(int64_t d, int64_t n, int64_t c, int64_t h, int64_t w, Dat | |||||
std::vector<int64_t> &dst_shape) { | std::vector<int64_t> &dst_shape) { | ||||
auto c0 = GetCubeSizeByDataType(data_type); | auto c0 = GetCubeSizeByDataType(data_type); | ||||
if (c0 < 0) { | if (c0 < 0) { | ||||
return UNSUPPORTED; | |||||
return ACL_ERROR_GE_TRANSSHAPE_DATATYPE_INVALID; | |||||
} | } | ||||
auto c1 = Ceil(c, c0); | auto c1 = Ceil(c, c0); | ||||
@@ -50,7 +50,7 @@ Status TransShapeToFz(int64_t d, int64_t n, int64_t c, int64_t h, int64_t w, Dat | |||||
Status TransShapeDhwckToFz3D(const std::vector<int64_t> &src_shape, DataType data_type, | Status TransShapeDhwckToFz3D(const std::vector<int64_t> &src_shape, DataType data_type, | ||||
std::vector<int64_t> &dst_shape) { | std::vector<int64_t> &dst_shape) { | ||||
if (!CheckShapeValid(src_shape, kDhwcnDimsNum)) { | if (!CheckShapeValid(src_shape, kDhwcnDimsNum)) { | ||||
return PARAM_INVALID; | |||||
return ACL_ERROR_GE_TRANSSHAPE_SHAPE_INVALID; | |||||
} | } | ||||
auto d = src_shape.at(kDhwcnD); | auto d = src_shape.at(kDhwcnD); | ||||
auto h = src_shape.at(kDhwcnH); | auto h = src_shape.at(kDhwcnH); | ||||
@@ -163,14 +163,14 @@ Status FormatTransferDhwcnFractalZ3D::TransShape(Format src_format, const std::v | |||||
DataType data_type, Format dst_format, | DataType data_type, Format dst_format, | ||||
std::vector<int64_t> &dst_shape) { | std::vector<int64_t> &dst_shape) { | ||||
if (CheckDataTypeSupport(data_type) != SUCCESS) { | if (CheckDataTypeSupport(data_type) != SUCCESS) { | ||||
return UNSUPPORTED; | |||||
return ACL_ERROR_GE_TRANSSHAPE_DATATYPE_INVALID; | |||||
} | } | ||||
if (src_format == FORMAT_DHWCN && dst_format == FORMAT_FRACTAL_Z_3D) { | if (src_format == FORMAT_DHWCN && dst_format == FORMAT_FRACTAL_Z_3D) { | ||||
return TransShapeDhwckToFz3D(src_shape, data_type, dst_shape); | return TransShapeDhwckToFz3D(src_shape, data_type, dst_shape); | ||||
} | } | ||||
return UNSUPPORTED; | |||||
return ACL_ERROR_GE_TRANSSHAPE_FORMAT_INVALID; | |||||
} | } | ||||
REGISTER_FORMAT_TRANSFER(FormatTransferDhwcnFractalZ3D, FORMAT_DHWCN, FORMAT_FRACTAL_Z_3D) | REGISTER_FORMAT_TRANSFER(FormatTransferDhwcnFractalZ3D, FORMAT_DHWCN, FORMAT_FRACTAL_Z_3D) | ||||
@@ -32,7 +32,7 @@ Status TransShapeToFz(int64_t d, int64_t n, int64_t c, int64_t h, int64_t w, Dat | |||||
std::vector<int64_t> &dst_shape) { | std::vector<int64_t> &dst_shape) { | ||||
auto c0 = GetCubeSizeByDataType(data_type); | auto c0 = GetCubeSizeByDataType(data_type); | ||||
if (c0 < 0) { | if (c0 < 0) { | ||||
return UNSUPPORTED; | |||||
return ACL_ERROR_GE_TRANSSHAPE_DATATYPE_INVALID; | |||||
} | } | ||||
auto c1 = Ceil(c, c0); | auto c1 = Ceil(c, c0); | ||||
@@ -50,7 +50,7 @@ Status TransShapeToFz(int64_t d, int64_t n, int64_t c, int64_t h, int64_t w, Dat | |||||
Status TransShapeDhwncToFz3DTranspose(const std::vector<int64_t> &src_shape, DataType data_type, | Status TransShapeDhwncToFz3DTranspose(const std::vector<int64_t> &src_shape, DataType data_type, | ||||
std::vector<int64_t> &dst_shape) { | std::vector<int64_t> &dst_shape) { | ||||
if (!CheckShapeValid(src_shape, kDhwncDimsNum)) { | if (!CheckShapeValid(src_shape, kDhwncDimsNum)) { | ||||
return PARAM_INVALID; | |||||
return ACL_ERROR_GE_TRANSSHAPE_SHAPE_INVALID; | |||||
} | } | ||||
auto d = src_shape.at(kDhwncD); | auto d = src_shape.at(kDhwncD); | ||||
auto h = src_shape.at(kDhwncH); | auto h = src_shape.at(kDhwncH); | ||||
@@ -164,14 +164,14 @@ Status FormatTransferDhwncFractalZ3DTranspose::TransShape(Format src_format, con | |||||
DataType data_type, Format dst_format, | DataType data_type, Format dst_format, | ||||
std::vector<int64_t> &dst_shape) { | std::vector<int64_t> &dst_shape) { | ||||
if (CheckDataTypeSupport(data_type) != SUCCESS) { | if (CheckDataTypeSupport(data_type) != SUCCESS) { | ||||
return UNSUPPORTED; | |||||
return ACL_ERROR_GE_TRANSSHAPE_DATATYPE_INVALID; | |||||
} | } | ||||
if (src_format == FORMAT_DHWNC && dst_format == FORMAT_FRACTAL_Z_3D_TRANSPOSE) { | if (src_format == FORMAT_DHWNC && dst_format == FORMAT_FRACTAL_Z_3D_TRANSPOSE) { | ||||
return TransShapeDhwncToFz3DTranspose(src_shape, data_type, dst_shape); | return TransShapeDhwncToFz3DTranspose(src_shape, data_type, dst_shape); | ||||
} | } | ||||
return UNSUPPORTED; | |||||
return ACL_ERROR_GE_TRANSSHAPE_FORMAT_INVALID; | |||||
} | } | ||||
REGISTER_FORMAT_TRANSFER(FormatTransferDhwncFractalZ3DTranspose, FORMAT_DHWNC, FORMAT_FRACTAL_Z_3D_TRANSPOSE) | REGISTER_FORMAT_TRANSFER(FormatTransferDhwncFractalZ3DTranspose, FORMAT_DHWNC, FORMAT_FRACTAL_Z_3D_TRANSPOSE) | ||||
@@ -87,8 +87,8 @@ Status TransShapeToFracNz(const ShapeVector &src_shape, DataType data_type, Shap | |||||
hw_shape.push_back(DIM_DEFAULT_VALUE); | hw_shape.push_back(DIM_DEFAULT_VALUE); | ||||
hw_shape.push_back(src_shape[kNdDimIndexN]); | hw_shape.push_back(src_shape[kNdDimIndexN]); | ||||
if (!IsShapeValid(dst_shape)) { | if (!IsShapeValid(dst_shape)) { | ||||
GELOGE(PARAM_INVALID, "Failed to check dst shape %s", ShapeToString(dst_shape).c_str()); | |||||
return PARAM_INVALID; | |||||
GELOGE(ACL_ERROR_GE_TRANSSHAPE_SHAPE_INVALID, "Failed to check dst shape %s", ShapeToString(dst_shape).c_str()); | |||||
return ACL_ERROR_GE_TRANSSHAPE_SHAPE_INVALID; | |||||
} | } | ||||
return SUCCESS; | return SUCCESS; | ||||
default: | default: | ||||
@@ -106,8 +106,8 @@ Status TransShapeToFracNz(const ShapeVector &src_shape, DataType data_type, Shap | |||||
hw_shape.push_back(src_shape[size - kNdDimCountBackwardsWH]); | hw_shape.push_back(src_shape[size - kNdDimCountBackwardsWH]); | ||||
hw_shape.push_back(src_shape[size - kNdDimCountBackwardsW]); | hw_shape.push_back(src_shape[size - kNdDimCountBackwardsW]); | ||||
if (!IsShapeValid(dst_shape)) { | if (!IsShapeValid(dst_shape)) { | ||||
GELOGE(PARAM_INVALID, "Failed to check dst shape %s", ShapeToString(dst_shape).c_str()); | |||||
return PARAM_INVALID; | |||||
GELOGE(ACL_ERROR_GE_TRANSSHAPE_SHAPE_INVALID, "Failed to check dst shape %s", ShapeToString(dst_shape).c_str()); | |||||
return ACL_ERROR_GE_TRANSSHAPE_SHAPE_INVALID; | |||||
} | } | ||||
return SUCCESS; | return SUCCESS; | ||||
} | } | ||||
@@ -299,11 +299,19 @@ Status FormatTransferFractalNz::TransFormat(const TransArgs &args, TransResult & | |||||
Status FormatTransferFractalNz::TransShape(Format src_format, const ShapeVector &src_shape, DataType data_type, | Status FormatTransferFractalNz::TransShape(Format src_format, const ShapeVector &src_shape, DataType data_type, | ||||
Format dst_format, ShapeVector &dst_shape) { | Format dst_format, ShapeVector &dst_shape) { | ||||
if (!IsDataTypeSupport(data_type) || !CheckShape(src_format, src_shape)) { | |||||
GELOGE(PARAM_INVALID, "Trans format from %s to %s, src shape %s, data type %s is not supported", | |||||
if (!IsDataTypeSupport(data_type)) { | |||||
GELOGE(ACL_ERROR_GE_TRANSSHAPE_DATATYPE_INVALID, | |||||
"Trans format from %s to %s, src shape %s, data type %s is not supported", | |||||
TypeUtils::FormatToSerialString(src_format).c_str(), TypeUtils::FormatToSerialString(dst_format).c_str(), | TypeUtils::FormatToSerialString(src_format).c_str(), TypeUtils::FormatToSerialString(dst_format).c_str(), | ||||
ShapeToString(src_shape).c_str(), TypeUtils::DataTypeToSerialString(data_type).c_str()); | ShapeToString(src_shape).c_str(), TypeUtils::DataTypeToSerialString(data_type).c_str()); | ||||
return PARAM_INVALID; | |||||
return ACL_ERROR_GE_TRANSSHAPE_DATATYPE_INVALID; | |||||
} | |||||
if (!CheckShape(src_format, src_shape)) { | |||||
GELOGE(ACL_ERROR_GE_TRANSSHAPE_SHAPE_INVALID, | |||||
"Trans format from %s to %s, src shape %s, data type %s is not supported", | |||||
TypeUtils::FormatToSerialString(src_format).c_str(), TypeUtils::FormatToSerialString(dst_format).c_str(), | |||||
ShapeToString(src_shape).c_str(), TypeUtils::DataTypeToSerialString(data_type).c_str()); | |||||
return ACL_ERROR_GE_TRANSSHAPE_SHAPE_INVALID; | |||||
} | } | ||||
ShapeVector hw_shape; | ShapeVector hw_shape; | ||||
return TransShapeToFracNz(src_shape, data_type, dst_shape, hw_shape); | return TransShapeToFracNz(src_shape, data_type, dst_shape, hw_shape); | ||||
@@ -334,7 +342,7 @@ Status FormatTransferFractalNzND::TransShape(Format src_format, const ShapeVecto | |||||
Format dst_format, ShapeVector &dst_shape) { | Format dst_format, ShapeVector &dst_shape) { | ||||
GELOGD("The shape derivation from %s to %s is not unique. Trans shape is not supported", | GELOGD("The shape derivation from %s to %s is not unique. Trans shape is not supported", | ||||
TypeUtils::FormatToSerialString(src_format).c_str(), TypeUtils::FormatToSerialString(dst_format).c_str()); | TypeUtils::FormatToSerialString(src_format).c_str(), TypeUtils::FormatToSerialString(dst_format).c_str()); | ||||
return UNSUPPORTED; | |||||
return ACL_ERROR_GE_TRANSSHAPE_FORMAT_INVALID; | |||||
} | } | ||||
REGISTER_FORMAT_TRANSFER(FormatTransferFractalNz, FORMAT_ND, FORMAT_FRACTAL_NZ) | REGISTER_FORMAT_TRANSFER(FormatTransferFractalNz, FORMAT_ND, FORMAT_FRACTAL_NZ) | ||||
@@ -42,7 +42,7 @@ Status CheckDataTypeSupport(DataType data_type) { return GetSizeByDataType(data_ | |||||
Status TransShapeToFz(int64_t n, int64_t c, int64_t h, int64_t w, DataType data_type, std::vector<int64_t> &dst_shape) { | Status TransShapeToFz(int64_t n, int64_t c, int64_t h, int64_t w, DataType data_type, std::vector<int64_t> &dst_shape) { | ||||
auto c0 = GetCubeSizeByDataType(data_type); | auto c0 = GetCubeSizeByDataType(data_type); | ||||
if (c0 < 0) { | if (c0 < 0) { | ||||
return UNSUPPORTED; | |||||
return ACL_ERROR_GE_TRANSSHAPE_DATATYPE_INVALID; | |||||
} | } | ||||
auto c1 = Ceil(c, c0); | auto c1 = Ceil(c, c0); | ||||
@@ -54,15 +54,16 @@ Status TransShapeToFz(int64_t n, int64_t c, int64_t h, int64_t w, DataType data_ | |||||
dst_shape.push_back(kNiSize); | dst_shape.push_back(kNiSize); | ||||
dst_shape.push_back(c0); | dst_shape.push_back(c0); | ||||
if (!IsShapeValid(dst_shape)) { | if (!IsShapeValid(dst_shape)) { | ||||
GELOGE(PARAM_INVALID, "Failed to check dst shape %s", ShapeToString(dst_shape).c_str()); | |||||
return PARAM_INVALID; | |||||
GELOGE(ACL_ERROR_GE_TRANSSHAPE_SHAPE_INVALID, "Failed to check dst shape %s", | |||||
ShapeToString(dst_shape).c_str()); | |||||
return ACL_ERROR_GE_TRANSSHAPE_SHAPE_INVALID; | |||||
} | } | ||||
return SUCCESS; | return SUCCESS; | ||||
} | } | ||||
Status TransShapeNchwToFz(const std::vector<int64_t> &src_shape, DataType data_type, std::vector<int64_t> &dst_shape) { | Status TransShapeNchwToFz(const std::vector<int64_t> &src_shape, DataType data_type, std::vector<int64_t> &dst_shape) { | ||||
if (!CheckShapeValid(src_shape, kNchwDimsNum)) { | if (!CheckShapeValid(src_shape, kNchwDimsNum)) { | ||||
return PARAM_INVALID; | |||||
return ACL_ERROR_GE_TRANSSHAPE_SHAPE_INVALID; | |||||
} | } | ||||
auto n = src_shape.at(kNchwN); | auto n = src_shape.at(kNchwN); | ||||
@@ -74,7 +75,7 @@ Status TransShapeNchwToFz(const std::vector<int64_t> &src_shape, DataType data_t | |||||
Status TransShapeHwcnToFz(const std::vector<int64_t> &src_shape, DataType data_type, std::vector<int64_t> &dst_shape) { | Status TransShapeHwcnToFz(const std::vector<int64_t> &src_shape, DataType data_type, std::vector<int64_t> &dst_shape) { | ||||
if (!CheckShapeValid(src_shape, kHwcnDimsNum)) { | if (!CheckShapeValid(src_shape, kHwcnDimsNum)) { | ||||
return PARAM_INVALID; | |||||
return ACL_ERROR_GE_TRANSSHAPE_SHAPE_INVALID; | |||||
} | } | ||||
auto h = src_shape.at(kHwcnH); | auto h = src_shape.at(kHwcnH); | ||||
@@ -87,7 +88,7 @@ Status TransShapeHwcnToFz(const std::vector<int64_t> &src_shape, DataType data_t | |||||
Status TransShapeNhwcToFz(const std::vector<int64_t> &src_shape, DataType data_type, std::vector<int64_t> &dst_shape) { | Status TransShapeNhwcToFz(const std::vector<int64_t> &src_shape, DataType data_type, std::vector<int64_t> &dst_shape) { | ||||
if (!CheckShapeValid(src_shape, kNhwcDimsNum)) { | if (!CheckShapeValid(src_shape, kNhwcDimsNum)) { | ||||
return PARAM_INVALID; | |||||
return ACL_ERROR_GE_TRANSSHAPE_SHAPE_INVALID; | |||||
} | } | ||||
auto n = src_shape.at(kNhwcN); | auto n = src_shape.at(kNhwcN); | ||||
@@ -369,7 +370,7 @@ Status FormatTransferFractalZ::TransFormat(const TransArgs &args, TransResult &r | |||||
Status FormatTransferFractalZ::TransShape(Format src_format, const std::vector<int64_t> &src_shape, DataType data_type, | Status FormatTransferFractalZ::TransShape(Format src_format, const std::vector<int64_t> &src_shape, DataType data_type, | ||||
Format dst_format, std::vector<int64_t> &dst_shape) { | Format dst_format, std::vector<int64_t> &dst_shape) { | ||||
if (CheckDataTypeSupport(data_type) != SUCCESS) { | if (CheckDataTypeSupport(data_type) != SUCCESS) { | ||||
return UNSUPPORTED; | |||||
return ACL_ERROR_GE_TRANSSHAPE_DATATYPE_INVALID; | |||||
} | } | ||||
if (src_format == FORMAT_NHWC && dst_format == FORMAT_FRACTAL_Z) { | if (src_format == FORMAT_NHWC && dst_format == FORMAT_FRACTAL_Z) { | ||||
@@ -382,7 +383,7 @@ Status FormatTransferFractalZ::TransShape(Format src_format, const std::vector<i | |||||
return TransShapeNchwToFz(src_shape, data_type, dst_shape); | return TransShapeNchwToFz(src_shape, data_type, dst_shape); | ||||
} | } | ||||
return UNSUPPORTED; | |||||
return ACL_ERROR_GE_TRANSSHAPE_FORMAT_INVALID; | |||||
} | } | ||||
REGISTER_FORMAT_TRANSFER(FormatTransferFractalZ, FORMAT_NCHW, FORMAT_FRACTAL_Z) | REGISTER_FORMAT_TRANSFER(FormatTransferFractalZ, FORMAT_NCHW, FORMAT_FRACTAL_Z) | ||||
@@ -86,8 +86,9 @@ Status TransShapeToFracZz(const ShapeVector &src_shape, DataType data_type, Shap | |||||
hw_shape.push_back(DIM_DEFAULT_VALUE); | hw_shape.push_back(DIM_DEFAULT_VALUE); | ||||
hw_shape.push_back(src_shape[kNdDimIndexN]); | hw_shape.push_back(src_shape[kNdDimIndexN]); | ||||
if (!IsShapeValid(dst_shape)) { | if (!IsShapeValid(dst_shape)) { | ||||
GELOGE(PARAM_INVALID, "Failed to check dst shape %s", ShapeToString(dst_shape).c_str()); | |||||
return PARAM_INVALID; | |||||
GELOGE(ACL_ERROR_GE_TRANSSHAPE_SHAPE_INVALID, "Failed to check dst shape %s", | |||||
ShapeToString(dst_shape).c_str()); | |||||
return ACL_ERROR_GE_TRANSSHAPE_SHAPE_INVALID; | |||||
} | } | ||||
return SUCCESS; | return SUCCESS; | ||||
default: | default: | ||||
@@ -105,8 +106,9 @@ Status TransShapeToFracZz(const ShapeVector &src_shape, DataType data_type, Shap | |||||
hw_shape.push_back(src_shape[size - kNdDimCountBackwardsWH]); | hw_shape.push_back(src_shape[size - kNdDimCountBackwardsWH]); | ||||
hw_shape.push_back(src_shape[size - kNdDimCountBackwardsW]); | hw_shape.push_back(src_shape[size - kNdDimCountBackwardsW]); | ||||
if (!IsShapeValid(dst_shape)) { | if (!IsShapeValid(dst_shape)) { | ||||
GELOGE(PARAM_INVALID, "Failed to check dst shape %s", ShapeToString(dst_shape).c_str()); | |||||
return PARAM_INVALID; | |||||
GELOGE(ACL_ERROR_GE_TRANSSHAPE_SHAPE_INVALID, "Failed to check dst shape %s", | |||||
ShapeToString(dst_shape).c_str()); | |||||
return ACL_ERROR_GE_TRANSSHAPE_SHAPE_INVALID; | |||||
} | } | ||||
return SUCCESS; | return SUCCESS; | ||||
} | } | ||||
@@ -311,11 +313,19 @@ Status FormatTransferFractalZz::TransFormat(const TransArgs &args, TransResult & | |||||
Status FormatTransferFractalZz::TransShape(Format src_format, const ShapeVector &src_shape, DataType data_type, | Status FormatTransferFractalZz::TransShape(Format src_format, const ShapeVector &src_shape, DataType data_type, | ||||
Format dst_format, ShapeVector &dst_shape) { | Format dst_format, ShapeVector &dst_shape) { | ||||
if (!IsDataTypeSupport(data_type) || !CheckShape(src_format, src_shape)) { | |||||
GELOGE(PARAM_INVALID, "Not support trans format from %s to %s, src shape %s, data type %s", | |||||
if (!IsDataTypeSupport(data_type)) { | |||||
GELOGE(ACL_ERROR_GE_TRANSSHAPE_DATATYPE_INVALID, | |||||
"Not support trans format from %s to %s, src shape %s, data type %s", | |||||
TypeUtils::FormatToSerialString(src_format).c_str(), TypeUtils::FormatToSerialString(dst_format).c_str(), | TypeUtils::FormatToSerialString(src_format).c_str(), TypeUtils::FormatToSerialString(dst_format).c_str(), | ||||
ShapeToString(src_shape).c_str(), TypeUtils::DataTypeToSerialString(data_type).c_str()); | ShapeToString(src_shape).c_str(), TypeUtils::DataTypeToSerialString(data_type).c_str()); | ||||
return PARAM_INVALID; | |||||
return ACL_ERROR_GE_TRANSSHAPE_DATATYPE_INVALID; | |||||
} | |||||
if (!CheckShape(src_format, src_shape)) { | |||||
GELOGE(ACL_ERROR_GE_TRANSSHAPE_SHAPE_INVALID, | |||||
"Not support trans format from %s to %s, src shape %s, data type %s", | |||||
TypeUtils::FormatToSerialString(src_format).c_str(), TypeUtils::FormatToSerialString(dst_format).c_str(), | |||||
ShapeToString(src_shape).c_str(), TypeUtils::DataTypeToSerialString(data_type).c_str()); | |||||
return ACL_ERROR_GE_TRANSSHAPE_SHAPE_INVALID; | |||||
} | } | ||||
ShapeVector hw_shape; | ShapeVector hw_shape; | ||||
return TransShapeToFracZz(src_shape, data_type, dst_shape, hw_shape); | return TransShapeToFracZz(src_shape, data_type, dst_shape, hw_shape); | ||||
@@ -346,7 +356,7 @@ Status FormatTransferFractalZzND::TransShape(Format src_format, const ShapeVecto | |||||
Format dst_format, ShapeVector &dst_shape) { | Format dst_format, ShapeVector &dst_shape) { | ||||
GELOGD("The shape derivation from %s to %s is not unique. Trans shape is not supported", | GELOGD("The shape derivation from %s to %s is not unique. Trans shape is not supported", | ||||
TypeUtils::FormatToSerialString(src_format).c_str(), TypeUtils::FormatToSerialString(dst_format).c_str()); | TypeUtils::FormatToSerialString(src_format).c_str(), TypeUtils::FormatToSerialString(dst_format).c_str()); | ||||
return UNSUPPORTED; | |||||
return ACL_ERROR_GE_TRANSSHAPE_FORMAT_INVALID; | |||||
} | } | ||||
REGISTER_FORMAT_TRANSFER(FormatTransferFractalZz, FORMAT_ND, FORMAT_FRACTAL_ZZ) | REGISTER_FORMAT_TRANSFER(FormatTransferFractalZz, FORMAT_ND, FORMAT_FRACTAL_ZZ) | ||||
@@ -161,7 +161,7 @@ Status FormatTransferFracZHwcn::TransFormat(const TransArgs &args, TransResult & | |||||
Status FormatTransferFracZHwcn::TransShape(Format src_format, const std::vector<int64_t> &src_shape, DataType data_type, | Status FormatTransferFracZHwcn::TransShape(Format src_format, const std::vector<int64_t> &src_shape, DataType data_type, | ||||
Format dst_format, std::vector<int64_t> &dst_shape) { | Format dst_format, std::vector<int64_t> &dst_shape) { | ||||
GELOGD("The shape derivation from FracZ to HWCN is not unique. Trans shape in this direction is not supported"); | GELOGD("The shape derivation from FracZ to HWCN is not unique. Trans shape in this direction is not supported"); | ||||
return UNSUPPORTED; | |||||
return ACL_ERROR_GE_TRANSSHAPE_FORMAT_INVALID; | |||||
} | } | ||||
REGISTER_FORMAT_TRANSFER(FormatTransferFracZHwcn, FORMAT_FRACTAL_Z, FORMAT_HWCN) | REGISTER_FORMAT_TRANSFER(FormatTransferFracZHwcn, FORMAT_FRACTAL_Z, FORMAT_HWCN) | ||||
@@ -160,7 +160,7 @@ Status FormatTransferFracZNchw::TransFormat(const TransArgs &args, TransResult & | |||||
Status FormatTransferFracZNchw::TransShape(Format src_format, const std::vector<int64_t> &src_shape, DataType data_type, | Status FormatTransferFracZNchw::TransShape(Format src_format, const std::vector<int64_t> &src_shape, DataType data_type, | ||||
Format dst_format, std::vector<int64_t> &dst_shape) { | Format dst_format, std::vector<int64_t> &dst_shape) { | ||||
GELOGD("The shape derivation from FracZ to NCHW is not unique. Trans shape in this direction is not supported"); | GELOGD("The shape derivation from FracZ to NCHW is not unique. Trans shape in this direction is not supported"); | ||||
return UNSUPPORTED; | |||||
return ACL_ERROR_GE_TRANSSHAPE_FORMAT_INVALID; | |||||
} | } | ||||
REGISTER_FORMAT_TRANSFER(FormatTransferFracZNchw, FORMAT_FRACTAL_Z, FORMAT_NCHW) | REGISTER_FORMAT_TRANSFER(FormatTransferFracZNchw, FORMAT_FRACTAL_Z, FORMAT_NCHW) | ||||
@@ -43,8 +43,9 @@ Status TransShapeHwcnToC1hwncoc0(const DataType &data_type, const std::vector<in | |||||
dst_shape.push_back(cube_size); | dst_shape.push_back(cube_size); | ||||
dst_shape.push_back(cube_size); | dst_shape.push_back(cube_size); | ||||
if (!CheckShapeValid(dst_shape, kC1hwncoc0DimsNum)) { | if (!CheckShapeValid(dst_shape, kC1hwncoc0DimsNum)) { | ||||
GELOGE(PARAM_INVALID, "Failed to check dst shape %s", ShapeToString(dst_shape).c_str()); | |||||
return PARAM_INVALID; | |||||
GELOGE(ACL_ERROR_GE_TRANSSHAPE_SHAPE_INVALID, "Failed to check dst shape %s", | |||||
ShapeToString(dst_shape).c_str()); | |||||
return ACL_ERROR_GE_TRANSSHAPE_SHAPE_INVALID; | |||||
} | } | ||||
return SUCCESS; | return SUCCESS; | ||||
} | } | ||||
@@ -197,12 +198,15 @@ Status FormatTransferHwcnC1hwncoc0::TransShape(Format src_format, const std::vec | |||||
DataType data_type, Format dst_format, std::vector<int64_t> &dst_shape) { | DataType data_type, Format dst_format, std::vector<int64_t> &dst_shape) { | ||||
if (src_format == FORMAT_HWCN && CheckDataTypeSupported(data_type)) { | if (src_format == FORMAT_HWCN && CheckDataTypeSupported(data_type)) { | ||||
if (!CheckShapeValid(src_shape, kHwcnDimsNum)) { | if (!CheckShapeValid(src_shape, kHwcnDimsNum)) { | ||||
GELOGE(PARAM_INVALID, "Failed to check src shape %s", ShapeToString(src_shape).c_str()); | |||||
return PARAM_INVALID; | |||||
GELOGE(ACL_ERROR_GE_TRANSSHAPE_SHAPE_INVALID, "Failed to check src shape %s", | |||||
ShapeToString(src_shape).c_str()); | |||||
return ACL_ERROR_GE_TRANSSHAPE_SHAPE_INVALID; | |||||
} | } | ||||
return TransShapeHwcnToC1hwncoc0(data_type, src_shape, dst_shape); | return TransShapeHwcnToC1hwncoc0(data_type, src_shape, dst_shape); | ||||
} else if (src_format != FORMAT_HWCN) { | |||||
return ACL_ERROR_GE_TRANSSHAPE_FORMAT_INVALID; | |||||
} else { | } else { | ||||
return UNSUPPORTED; | |||||
return ACL_ERROR_GE_TRANSSHAPE_DATATYPE_INVALID; | |||||
} | } | ||||
} | } | ||||
@@ -157,7 +157,7 @@ Status FormatTransferNc1hwc0Nhwc::TransFormat(const TransArgs &args, TransResult | |||||
Status FormatTransferNc1hwc0Nhwc::TransShape(Format src_format, const std::vector<int64_t> &src_shape, | Status FormatTransferNc1hwc0Nhwc::TransShape(Format src_format, const std::vector<int64_t> &src_shape, | ||||
DataType data_type, Format dst_format, std::vector<int64_t> &dst_shape) { | DataType data_type, Format dst_format, std::vector<int64_t> &dst_shape) { | ||||
GELOGD("The shape derivation from NC1HWC0 to NHWC is not unique. Trans shape in this direction is not supported"); | GELOGD("The shape derivation from NC1HWC0 to NHWC is not unique. Trans shape in this direction is not supported"); | ||||
return UNSUPPORTED; | |||||
return ACL_ERROR_GE_TRANSSHAPE_FORMAT_INVALID; | |||||
} | } | ||||
REGISTER_FORMAT_TRANSFER(FormatTransferNc1hwc0Nhwc, FORMAT_NC1HWC0, FORMAT_NHWC) | REGISTER_FORMAT_TRANSFER(FormatTransferNc1hwc0Nhwc, FORMAT_NC1HWC0, FORMAT_NHWC) | ||||
@@ -45,7 +45,7 @@ Status CheckDataTypeSupport(DataType data_type) { return GetSizeByDataType(data_ | |||||
Status TransShape(int64_t n, int64_t c, int64_t h, int64_t w, DataType data_type, std::vector<int64_t> &dst_shape) { | Status TransShape(int64_t n, int64_t c, int64_t h, int64_t w, DataType data_type, std::vector<int64_t> &dst_shape) { | ||||
auto c0 = GetCubeSizeByDataType(data_type); | auto c0 = GetCubeSizeByDataType(data_type); | ||||
if (c0 < 0) { | if (c0 < 0) { | ||||
return UNSUPPORTED; | |||||
return ACL_ERROR_GE_TRANSSHAPE_DATATYPE_INVALID; | |||||
} | } | ||||
auto chw = c * h * w; | auto chw = c * h * w; | ||||
@@ -59,8 +59,9 @@ Status TransShape(int64_t n, int64_t c, int64_t h, int64_t w, DataType data_type | |||||
dst_shape.push_back(c0); | dst_shape.push_back(c0); | ||||
if (!IsShapeValid(dst_shape)) { | if (!IsShapeValid(dst_shape)) { | ||||
GELOGE(PARAM_INVALID, "Failed to check dst shape %s", ShapeToString(dst_shape).c_str()); | |||||
return PARAM_INVALID; | |||||
GELOGE(ACL_ERROR_GE_TRANSSHAPE_SHAPE_INVALID, "Failed to check dst shape %s", | |||||
ShapeToString(dst_shape).c_str()); | |||||
return ACL_ERROR_GE_TRANSSHAPE_SHAPE_INVALID; | |||||
} | } | ||||
return SUCCESS; | return SUCCESS; | ||||
} | } | ||||
@@ -68,7 +69,7 @@ Status TransShape(int64_t n, int64_t c, int64_t h, int64_t w, DataType data_type | |||||
Status TransShapeNchwToFzC04(const std::vector<int64_t> &src_shape, DataType data_type, | Status TransShapeNchwToFzC04(const std::vector<int64_t> &src_shape, DataType data_type, | ||||
std::vector<int64_t> &dst_shape) { | std::vector<int64_t> &dst_shape) { | ||||
if (!CheckShapeValid(src_shape, kNchwDimsNum)) { | if (!CheckShapeValid(src_shape, kNchwDimsNum)) { | ||||
return PARAM_INVALID; | |||||
return ACL_ERROR_GE_TRANSSHAPE_SHAPE_INVALID; | |||||
} | } | ||||
auto n = src_shape.at(kNchwN); | auto n = src_shape.at(kNchwN); | ||||
@@ -293,13 +294,13 @@ Status FormatTransferNchwToFZC04::TransFormat(const TransArgs &args, TransResult | |||||
Status FormatTransferNchwToFZC04::TransShape(Format src_format, const std::vector<int64_t> &src_shape, | Status FormatTransferNchwToFZC04::TransShape(Format src_format, const std::vector<int64_t> &src_shape, | ||||
DataType data_type, Format dst_format, std::vector<int64_t> &dst_shape) { | DataType data_type, Format dst_format, std::vector<int64_t> &dst_shape) { | ||||
if (CheckDataTypeSupport(data_type) != SUCCESS) { | if (CheckDataTypeSupport(data_type) != SUCCESS) { | ||||
return UNSUPPORTED; | |||||
return ACL_ERROR_GE_TRANSSHAPE_DATATYPE_INVALID; | |||||
} | } | ||||
if (src_format == FORMAT_NCHW && dst_format == FORMAT_FRACTAL_Z_C04) { | if (src_format == FORMAT_NCHW && dst_format == FORMAT_FRACTAL_Z_C04) { | ||||
return TransShapeNchwToFzC04(src_shape, data_type, dst_shape); | return TransShapeNchwToFzC04(src_shape, data_type, dst_shape); | ||||
} | } | ||||
return UNSUPPORTED; | |||||
return ACL_ERROR_GE_TRANSSHAPE_FORMAT_INVALID; | |||||
} | } | ||||
REGISTER_FORMAT_TRANSFER(FormatTransferNchwToFZC04, FORMAT_NCHW, FORMAT_FRACTAL_Z_C04) | REGISTER_FORMAT_TRANSFER(FormatTransferNchwToFZC04, FORMAT_NCHW, FORMAT_FRACTAL_Z_C04) | ||||
@@ -32,12 +32,13 @@ Status TransShapeNchwToNc1hwc0(const std::vector<int64_t> &src_shape, DataType d | |||||
std::vector<int64_t> &dst_shape) { | std::vector<int64_t> &dst_shape) { | ||||
int64_t c0 = GetCubeSizeByDataType(data_type); | int64_t c0 = GetCubeSizeByDataType(data_type); | ||||
if (c0 <= 0) { | if (c0 <= 0) { | ||||
GELOGE(PARAM_INVALID, "Failed to get cube size, the data type is invalid"); | |||||
return PARAM_INVALID; | |||||
GELOGE(ACL_ERROR_GE_TRANSSHAPE_DATATYPE_INVALID, "Failed to get cube size, the data type is invalid"); | |||||
return ACL_ERROR_GE_TRANSSHAPE_DATATYPE_INVALID; | |||||
} | } | ||||
if (!CheckShapeValid(src_shape, kNchwDimsNum)) { | if (!CheckShapeValid(src_shape, kNchwDimsNum)) { | ||||
GELOGE(PARAM_INVALID, "Failed to check src shape %s", ShapeToString(src_shape).c_str()); | |||||
return PARAM_INVALID; | |||||
GELOGE(ACL_ERROR_GE_TRANSSHAPE_SHAPE_INVALID, "Failed to check src shape %s", | |||||
ShapeToString(src_shape).c_str()); | |||||
return ACL_ERROR_GE_TRANSSHAPE_SHAPE_INVALID; | |||||
} | } | ||||
dst_shape.clear(); | dst_shape.clear(); | ||||
dst_shape.push_back(src_shape.at(kNchwN)); | dst_shape.push_back(src_shape.at(kNchwN)); | ||||
@@ -46,8 +47,9 @@ Status TransShapeNchwToNc1hwc0(const std::vector<int64_t> &src_shape, DataType d | |||||
dst_shape.push_back(src_shape.at(kNchwW)); | dst_shape.push_back(src_shape.at(kNchwW)); | ||||
dst_shape.push_back(c0); | dst_shape.push_back(c0); | ||||
if (!CheckShapeValid(dst_shape, kNc1hwc0DimsNum)) { | if (!CheckShapeValid(dst_shape, kNc1hwc0DimsNum)) { | ||||
GELOGE(PARAM_INVALID, "Failed to check dst shape %s", ShapeToString(dst_shape).c_str()); | |||||
return PARAM_INVALID; | |||||
GELOGE(ACL_ERROR_GE_TRANSSHAPE_SHAPE_INVALID, "Failed to check dst shape %s", | |||||
ShapeToString(dst_shape).c_str()); | |||||
return ACL_ERROR_GE_TRANSSHAPE_SHAPE_INVALID; | |||||
} | } | ||||
return SUCCESS; | return SUCCESS; | ||||
} | } | ||||
@@ -193,7 +195,7 @@ Status FormatTransferNchwNc1hwc0::TransShape(Format src_format, const std::vecto | |||||
if (src_format == FORMAT_NCHW) { | if (src_format == FORMAT_NCHW) { | ||||
return TransShapeNchwToNc1hwc0(src_shape, data_type, dst_shape); | return TransShapeNchwToNc1hwc0(src_shape, data_type, dst_shape); | ||||
} else { | } else { | ||||
return UNSUPPORTED; | |||||
return ACL_ERROR_GE_TRANSSHAPE_FORMAT_INVALID; | |||||
} | } | ||||
} | } | ||||
@@ -34,8 +34,8 @@ Status TransShapeNhwcToNc1hwc0(const std::vector<int64_t> &src_shape, DataType d | |||||
std::vector<int64_t> &dst_shape) { | std::vector<int64_t> &dst_shape) { | ||||
int64_t c0 = GetCubeSizeByDataType(data_type); | int64_t c0 = GetCubeSizeByDataType(data_type); | ||||
if (c0 <= 0) { | if (c0 <= 0) { | ||||
GELOGE(PARAM_INVALID, "Failed to get cube size, the data type is invalid"); | |||||
return PARAM_INVALID; | |||||
GELOGE(ACL_ERROR_GE_TRANSSHAPE_DATATYPE_INVALID, "Failed to get cube size, the data type is invalid"); | |||||
return ACL_ERROR_GE_TRANSSHAPE_DATATYPE_INVALID; | |||||
} | } | ||||
dst_shape.clear(); | dst_shape.clear(); | ||||
dst_shape.push_back(src_shape.at(kNhwcN)); | dst_shape.push_back(src_shape.at(kNhwcN)); | ||||
@@ -44,8 +44,9 @@ Status TransShapeNhwcToNc1hwc0(const std::vector<int64_t> &src_shape, DataType d | |||||
dst_shape.push_back(src_shape.at(kNhwcW)); | dst_shape.push_back(src_shape.at(kNhwcW)); | ||||
dst_shape.push_back(c0); | dst_shape.push_back(c0); | ||||
if (!CheckShapeValid(dst_shape, kNc1hwc0DimsNum)) { | if (!CheckShapeValid(dst_shape, kNc1hwc0DimsNum)) { | ||||
GELOGE(PARAM_INVALID, "Failed to check dst shape %s", ShapeToString(dst_shape).c_str()); | |||||
return PARAM_INVALID; | |||||
GELOGE(ACL_ERROR_GE_TRANSSHAPE_SHAPE_INVALID, "Failed to check dst shape %s", | |||||
ShapeToString(dst_shape).c_str()); | |||||
return ACL_ERROR_GE_TRANSSHAPE_SHAPE_INVALID; | |||||
} | } | ||||
return SUCCESS; | return SUCCESS; | ||||
} | } | ||||
@@ -189,12 +190,15 @@ Status FormatTransferNhwcNc1hwc0::TransShape(Format src_format, const std::vecto | |||||
DataType data_type, Format dst_format, std::vector<int64_t> &dst_shape) { | DataType data_type, Format dst_format, std::vector<int64_t> &dst_shape) { | ||||
if (src_format == FORMAT_NHWC && CheckDataTypeSupported(data_type)) { | if (src_format == FORMAT_NHWC && CheckDataTypeSupported(data_type)) { | ||||
if (!CheckShapeValid(src_shape, kNhwcDimsNum)) { | if (!CheckShapeValid(src_shape, kNhwcDimsNum)) { | ||||
GELOGE(PARAM_INVALID, "Failed to check src shape %s", ShapeToString(src_shape).c_str()); | |||||
return PARAM_INVALID; | |||||
GELOGE(ACL_ERROR_GE_TRANSSHAPE_SHAPE_INVALID, "Failed to check src shape %s", | |||||
ShapeToString(src_shape).c_str()); | |||||
return ACL_ERROR_GE_TRANSSHAPE_SHAPE_INVALID; | |||||
} | } | ||||
return TransShapeNhwcToNc1hwc0(src_shape, data_type, dst_shape); | return TransShapeNhwcToNc1hwc0(src_shape, data_type, dst_shape); | ||||
} else if (src_format != FORMAT_NHWC) { | |||||
return ACL_ERROR_GE_TRANSSHAPE_FORMAT_INVALID; | |||||
} else { | } else { | ||||
return UNSUPPORTED; | |||||
return ACL_ERROR_GE_TRANSSHAPE_DATATYPE_INVALID; | |||||
} | } | ||||
} | } | ||||
@@ -211,16 +211,16 @@ Status GetPermByForamt(Format src_format, Format dst_format, std::vector<int64_t | |||||
std::string error = "Failed to trans shape, do not support transpose from format " + | std::string error = "Failed to trans shape, do not support transpose from format " + | ||||
FmtToStr(TypeUtils::FormatToSerialString(src_format)) + " to " + | FmtToStr(TypeUtils::FormatToSerialString(src_format)) + " to " + | ||||
FmtToStr(TypeUtils::FormatToSerialString(dst_format)); | FmtToStr(TypeUtils::FormatToSerialString(dst_format)); | ||||
GE_ERRORLOG_AND_ERRORMSG(UNSUPPORTED, error.c_str()); | |||||
return UNSUPPORTED; | |||||
GE_ERRORLOG_AND_ERRORMSG(ACL_ERROR_GE_TRANSSHAPE_FORMAT_INVALID, error.c_str()); | |||||
return ACL_ERROR_GE_TRANSSHAPE_FORMAT_INVALID; | |||||
} | } | ||||
auto iter = dst_iter->second.find(dst_format); | auto iter = dst_iter->second.find(dst_format); | ||||
if (iter == dst_iter->second.end()) { | if (iter == dst_iter->second.end()) { | ||||
std::string error = "Failed to trans shape, do not support transpose from format " + | std::string error = "Failed to trans shape, do not support transpose from format " + | ||||
FmtToStr(TypeUtils::FormatToSerialString(src_format)) + " to " + | FmtToStr(TypeUtils::FormatToSerialString(src_format)) + " to " + | ||||
FmtToStr(TypeUtils::FormatToSerialString(dst_format)); | FmtToStr(TypeUtils::FormatToSerialString(dst_format)); | ||||
GE_ERRORLOG_AND_ERRORMSG(UNSUPPORTED, error.c_str()); | |||||
return UNSUPPORTED; | |||||
GE_ERRORLOG_AND_ERRORMSG(ACL_ERROR_GE_TRANSSHAPE_FORMAT_INVALID, error.c_str()); | |||||
return ACL_ERROR_GE_TRANSSHAPE_FORMAT_INVALID; | |||||
} | } | ||||
perm = iter->second; | perm = iter->second; | ||||
return SUCCESS; | return SUCCESS; | ||||
@@ -244,7 +244,7 @@ Status FormatTransferTranspose::TransShape(Format src_format, const std::vector< | |||||
std::vector<int64_t> perm_arg; | std::vector<int64_t> perm_arg; | ||||
GE_CHK_STATUS_RET_NOLOG(GetPermByForamt(src_format, dst_format, perm_arg)); | GE_CHK_STATUS_RET_NOLOG(GetPermByForamt(src_format, dst_format, perm_arg)); | ||||
if (!IsShapeArgValid(src_shape, perm_arg)) { | if (!IsShapeArgValid(src_shape, perm_arg)) { | ||||
return PARAM_INVALID; | |||||
return ACL_ERROR_GE_TRANSSHAPE_SHAPE_INVALID; | |||||
} | } | ||||
dst_shape = TransShapeByPerm(src_shape, perm_arg); | dst_shape = TransShapeByPerm(src_shape, perm_arg); | ||||
return SUCCESS; | return SUCCESS; | ||||
@@ -64,8 +64,8 @@ GE_FUNC_DEV_VISIBILITY GE_FUNC_HOST_VISIBILITY Status TransShape(Format src_form | |||||
std::string error = "Failed to trans data from format " + | std::string error = "Failed to trans data from format " + | ||||
FmtToStr(TypeUtils::FormatToSerialString(args.src_format)) + " to " + | FmtToStr(TypeUtils::FormatToSerialString(args.src_format)) + " to " + | ||||
FmtToStr(TypeUtils::FormatToSerialString(args.dst_format)); | FmtToStr(TypeUtils::FormatToSerialString(args.dst_format)); | ||||
GE_ERRORLOG_AND_ERRORMSG(UNSUPPORTED, error.c_str()); | |||||
return UNSUPPORTED; | |||||
GE_ERRORLOG_AND_ERRORMSG(ACL_ERROR_GE_TRANSSHAPE_FORMAT_INVALID, error.c_str()); | |||||
return ACL_ERROR_GE_TRANSSHAPE_FORMAT_INVALID; | |||||
} | } | ||||
return transfer->TransShape(src_format, src_shape, data_type, dst_format, dst_shape); | return transfer->TransShape(src_format, src_shape, data_type, dst_format, dst_shape); | ||||
@@ -93,7 +93,7 @@ Status PluginManager::LoadSo(const string &path, const vector<string> &func_chec | |||||
std::vector<std::string> path_vec; | std::vector<std::string> path_vec; | ||||
SplitPath(path, path_vec); | SplitPath(path, path_vec); | ||||
for (const auto &single_path : path_vec) { | for (const auto &single_path : path_vec) { | ||||
GE_IF_BOOL_EXEC(single_path.length() >= MMPA_MAX_PATH, GELOGE(GE_PLGMGR_PATH_INVALID, | |||||
GE_IF_BOOL_EXEC(single_path.length() >= MMPA_MAX_PATH, GELOGE(ACL_ERROR_GE_PLGMGR_PATH_INVALID, | |||||
"The shared library file path is too long!"); | "The shared library file path is too long!"); | ||||
continue); | continue); | ||||
// load break when number of loaded so reach maximum | // load break when number of loaded so reach maximum | ||||
@@ -125,7 +125,8 @@ Status PluginManager::LoadSo(const string &path, const vector<string> &func_chec | |||||
GE_IF_BOOL_EXEC(error == nullptr, error = ""); | GE_IF_BOOL_EXEC(error == nullptr, error = ""); | ||||
ErrorManager::GetInstance().ATCReportErrMessage("E19012", {"function", "reason"}, | ErrorManager::GetInstance().ATCReportErrMessage("E19012", {"function", "reason"}, | ||||
{"mmDlopen", "shared library path is " + FmtToStr(file_path_dlopen) + ". Errormessage" + FmtToStr(error)}); | {"mmDlopen", "shared library path is " + FmtToStr(file_path_dlopen) + ". Errormessage" + FmtToStr(error)}); | ||||
GELOGE(GE_PLGMGR_PATH_INVALID, "Failed to dlopen the shared library path[%s]. Errormessage[%s]!", | |||||
GELOGE(ACL_ERROR_GE_PLGMGR_PATH_INVALID, | |||||
"Failed to dlopen the shared library path[%s]. Errormessage[%s]!", | |||||
file_path_dlopen.c_str(), error); | file_path_dlopen.c_str(), error); | ||||
continue; | continue; | ||||
} | } | ||||
@@ -138,8 +139,8 @@ Status PluginManager::LoadSo(const string &path, const vector<string> &func_chec | |||||
ErrorManager::GetInstance().ATCReportErrMessage("E19012", {"function", "reason"}, | ErrorManager::GetInstance().ATCReportErrMessage("E19012", {"function", "reason"}, | ||||
{"mmDlsym", FmtToStr(func_name) + " is skipped since function" + | {"mmDlsym", FmtToStr(func_name) + " is skipped since function" + | ||||
FmtToStr(func_name) + " is not existed!"}); | FmtToStr(func_name) + " is not existed!"}); | ||||
GELOGE(GE_PLGMGR_PATH_INVALID, "%s is skipped since function %s is not existed!", func_name.c_str(), | |||||
func_name.c_str()); | |||||
GELOGE(ACL_ERROR_GE_PLGMGR_PATH_INVALID, "%s is skipped since function %s is not existed!", | |||||
func_name.c_str(), func_name.c_str()); | |||||
is_valid = false; | is_valid = false; | ||||
break; | break; | ||||
} | } | ||||
@@ -226,7 +226,7 @@ Status GeExecutor::Initialize() { | |||||
} | } | ||||
GE_CHK_STATUS_RET(OpsKernelBuilderManager::Instance().Initialize({}, false), | GE_CHK_STATUS_RET(OpsKernelBuilderManager::Instance().Initialize({}, false), | ||||
"Failed to initialize OpsKernelBuilders"); | |||||
"Failed to initialize OpsKernelBuilders."); | |||||
// Start profiling | // Start profiling | ||||
Options profiling_options; | Options profiling_options; | ||||
@@ -100,14 +100,14 @@ Status CachingAllocator::Initialize(uint32_t device_id) { | |||||
} | } | ||||
auto bin_ptr = new (std::nothrow) BlockBin(BlockComparator); | auto bin_ptr = new (std::nothrow) BlockBin(BlockComparator); | ||||
if (bin_ptr == nullptr) { | if (bin_ptr == nullptr) { | ||||
GELOGE(ge::FAILED, "Alloc BlockBin failed."); | |||||
return ge::FAILED; | |||||
GELOGE(ACL_ERROR_GE_MEMORY_ALLOCATION, "Alloc BlockBin failed."); | |||||
return ACL_ERROR_GE_MEMORY_ALLOCATION; | |||||
} | } | ||||
free_block_bins_[i] = bin_ptr; | free_block_bins_[i] = bin_ptr; | ||||
} | } | ||||
memory_allocator_ = MemManager::Instance(memory_type_); | memory_allocator_ = MemManager::Instance(memory_type_); | ||||
if (memory_allocator_ == nullptr) { | if (memory_allocator_ == nullptr) { | ||||
return ge::FAILED; | |||||
return ACL_ERROR_GE_INTERNAL_ERROR; | |||||
} | } | ||||
return ge::SUCCESS; | return ge::SUCCESS; | ||||
} | } | ||||
@@ -64,9 +64,10 @@ uint8_t *MemoryAllocator::MallocMemory(const string &purpose, size_t memory_size | |||||
Status MemoryAllocator::FreeMemory(uint8_t *memory_addr, uint32_t device_id) const { | Status MemoryAllocator::FreeMemory(uint8_t *memory_addr, uint32_t device_id) const { | ||||
GELOGI("MemoryAllocator::FreeMemory device_id = %u", device_id); | GELOGI("MemoryAllocator::FreeMemory device_id = %u", device_id); | ||||
if (rtFree(memory_addr) != RT_ERROR_NONE) { | |||||
GELOGE(ge::INTERNAL_ERROR, "MemoryAllocator::MallocMemory device_id = %u", device_id); | |||||
return ge::INTERNAL_ERROR; | |||||
auto rtRet = rtFree(memory_addr); | |||||
if (rtRet != RT_ERROR_NONE) { | |||||
GELOGE(rtRet, "MemoryAllocator::MallocMemory device_id = %u", device_id); | |||||
return RT_ERROR_TO_GE_STATUS(rtRet); | |||||
} | } | ||||
memory_addr = nullptr; | memory_addr = nullptr; | ||||
return ge::SUCCESS; | return ge::SUCCESS; | ||||
@@ -168,31 +169,36 @@ Status MemManager::Initialize(const std::vector<rtMemType_t> &memory_type) { | |||||
memory_allocator_map_[index] = memory_allocator; | memory_allocator_map_[index] = memory_allocator; | ||||
GELOGI("Create MemoryAllocator memory type[%u] success.", index); | GELOGI("Create MemoryAllocator memory type[%u] success.", index); | ||||
} else { | } else { | ||||
GELOGE(ge::INTERNAL_ERROR, "Alloc MemoryAllocator failed."); | |||||
GELOGE(ACL_ERROR_GE_MEMORY_ALLOCATION, "Alloc MemoryAllocator failed."); | |||||
} | } | ||||
} else { | } else { | ||||
memory_allocator = it->second; | memory_allocator = it->second; | ||||
} | } | ||||
if (memory_allocator == nullptr) { | if (memory_allocator == nullptr) { | ||||
GELOGE(ge::INTERNAL_ERROR, "Create MemoryAllocator failed."); | |||||
return ge::INTERNAL_ERROR; | |||||
GELOGE(ACL_ERROR_GE_MEMORY_ALLOCATION, "Create MemoryAllocator failed."); | |||||
return ACL_ERROR_GE_MEMORY_ALLOCATION; | |||||
} else { | } else { | ||||
memory_allocator->Initialize(0); | memory_allocator->Initialize(0); | ||||
} | } | ||||
} | } | ||||
if (InitAllocator(memory_type, caching_allocator_map_) != SUCCESS) { | |||||
GELOGE(ge::INTERNAL_ERROR, "Create CachingAllocator failed."); | |||||
return ge::INTERNAL_ERROR; | |||||
auto ret = InitAllocator(memory_type, caching_allocator_map_); | |||||
if (ret != SUCCESS) { | |||||
GELOGE(ret, "Create CachingAllocator failed."); | |||||
return ret; | |||||
} | } | ||||
if (InitAllocator(memory_type, rdma_allocator_map_) != SUCCESS) { | |||||
GELOGE(ge::INTERNAL_ERROR, "Create RdmaAllocator failed."); | |||||
return ge::INTERNAL_ERROR; | |||||
ret = InitAllocator(memory_type, rdma_allocator_map_); | |||||
if (ret != SUCCESS) { | |||||
GELOGE(ret, "Create RdmaAllocator failed."); | |||||
return ret; | |||||
} | } | ||||
if (InitAllocator(memory_type, host_allocator_map_) != SUCCESS) { | |||||
GELOGE(ge::INTERNAL_ERROR, "Create HostMemAllocator failed."); | |||||
return ge::INTERNAL_ERROR; | |||||
ret = InitAllocator(memory_type, host_allocator_map_); | |||||
if (ret != SUCCESS) { | |||||
GELOGE(ret, "Create HostMemAllocator failed."); | |||||
return ret; | |||||
} | } | ||||
return SUCCESS; | return SUCCESS; | ||||
} | } | ||||
@@ -229,7 +235,7 @@ MemoryAllocator *MemManager::GetMemoryAllocator(rtMemType_t memory_type) { | |||||
// Usually impossible | // Usually impossible | ||||
if (memory_allocator == nullptr) { | if (memory_allocator == nullptr) { | ||||
GELOGE(ge::INTERNAL_ERROR, "GetMemoryAllocator failed, memory type is %u.", memory_type); | |||||
GELOGE(ACL_ERROR_GE_INTERNAL_ERROR, "GetMemoryAllocator failed, memory type is %u.", memory_type); | |||||
static MemoryAllocator default_memory_allocator(RT_MEMORY_RESERVED); | static MemoryAllocator default_memory_allocator(RT_MEMORY_RESERVED); | ||||
return &default_memory_allocator; | return &default_memory_allocator; | ||||
} | } | ||||
@@ -192,18 +192,18 @@ class MemManager { | |||||
allocate_map[index] = allocator; | allocate_map[index] = allocator; | ||||
GELOGI("Create Allocator memory type[%u] success.", index); | GELOGI("Create Allocator memory type[%u] success.", index); | ||||
} else { | } else { | ||||
GELOGE(INTERNAL_ERROR, "Alloc Allocator failed."); | |||||
GELOGE(ACL_ERROR_GE_MEMORY_ALLOCATION, "Alloc Allocator failed."); | |||||
} | } | ||||
} else { | } else { | ||||
allocator = it->second; | allocator = it->second; | ||||
} | } | ||||
if (allocator == nullptr) { | if (allocator == nullptr) { | ||||
GELOGE(INTERNAL_ERROR, "Create Allocator failed."); | |||||
return INTERNAL_ERROR; | |||||
GELOGE(ACL_ERROR_GE_MEMORY_ALLOCATION, "Create Allocator failed."); | |||||
return ACL_ERROR_GE_MEMORY_ALLOCATION; | |||||
} else { | } else { | ||||
if (allocator->Initialize() != SUCCESS) { | if (allocator->Initialize() != SUCCESS) { | ||||
return INTERNAL_ERROR; | |||||
return ACL_ERROR_GE_INIT_ALLOCATOR_FAILED; | |||||
} | } | ||||
} | } | ||||
} | } | ||||
@@ -51,7 +51,7 @@ RdmaPoolAllocator::RdmaPoolAllocator(rtMemType_t memory_type) | |||||
Status RdmaPoolAllocator::Initialize() { | Status RdmaPoolAllocator::Initialize() { | ||||
memory_allocator_ = MemManager::Instance(memory_type_); | memory_allocator_ = MemManager::Instance(memory_type_); | ||||
if (memory_allocator_ == nullptr) { | if (memory_allocator_ == nullptr) { | ||||
return ge::FAILED; | |||||
return ACL_ERROR_GE_INTERNAL_ERROR; | |||||
} | } | ||||
return ge::SUCCESS; | return ge::SUCCESS; | ||||
} | } | ||||
@@ -29,8 +29,9 @@ constexpr int64_t kDimEndFlag = INT64_MIN; | |||||
Status AicpuExtInfoHandler::Parse(const std::string &ext_info) { | Status AicpuExtInfoHandler::Parse(const std::string &ext_info) { | ||||
GELOGI("Node[%s] parse ext info start.", node_name_.c_str()); | GELOGI("Node[%s] parse ext info start.", node_name_.c_str()); | ||||
if (ext_info.empty()) { | if (ext_info.empty()) { | ||||
GELOGE(PARAM_INVALID, "Node[%s] parse ext info failed as ext info is empty.", node_name_.c_str()); | |||||
return PARAM_INVALID; | |||||
GELOGE(ACL_ERROR_GE_PARAM_INVALID, "Node[%s] parse ext info failed as ext info is empty.", | |||||
node_name_.c_str()); | |||||
return ACL_ERROR_GE_PARAM_INVALID; | |||||
} | } | ||||
ext_info_len_ = ext_info.size(); | ext_info_len_ = ext_info.size(); | ||||
@@ -38,8 +39,8 @@ Status AicpuExtInfoHandler::Parse(const std::string &ext_info) { | |||||
GE_CHECK_NOTNULL(ext_info_); | GE_CHECK_NOTNULL(ext_info_); | ||||
if (memcpy_s(ext_info_.get(), ext_info_len_, ext_info.c_str(), ext_info.size()) != EOK) { | if (memcpy_s(ext_info_.get(), ext_info_len_, ext_info.c_str(), ext_info.size()) != EOK) { | ||||
GELOGE(FAILED, "[%s] Failed to coy ext info", node_name_.c_str()); | |||||
return FAILED; | |||||
GELOGE(ACL_ERROR_GE_MEMORY_OPERATE_FAILED, "[%s] Failed to coy ext info", node_name_.c_str()); | |||||
return ACL_ERROR_GE_MEMORY_OPERATE_FAILED; | |||||
} | } | ||||
input_shape_and_type_.clear(); | input_shape_and_type_.clear(); | ||||
@@ -72,7 +73,7 @@ Status AicpuExtInfoHandler::Parse(const std::string &ext_info) { | |||||
offset += aicpu_ext_info->infoLen; | offset += aicpu_ext_info->infoLen; | ||||
} | } | ||||
GE_CHK_BOOL_RET_STATUS(offset == ext_info_len_, PARAM_INVALID, | |||||
GE_CHK_BOOL_RET_STATUS(offset == ext_info_len_, ACL_ERROR_GE_PARAM_INVALID, | |||||
"Node[%s] ext_info format error, parse not reach end, offset=%zu, ext_info_len=%zu.", | "Node[%s] ext_info format error, parse not reach end, offset=%zu, ext_info_len=%zu.", | ||||
node_name_.c_str(), offset, ext_info_len_); | node_name_.c_str(), offset, ext_info_len_); | ||||
GELOGI("Node[%s] parse ext info end.", node_name_.c_str()); | GELOGI("Node[%s] parse ext info end.", node_name_.c_str()); | ||||
@@ -80,13 +81,13 @@ Status AicpuExtInfoHandler::Parse(const std::string &ext_info) { | |||||
} | } | ||||
Status AicpuExtInfoHandler::ParseExtShapeType(AicpuExtInfo *aicpu_ext_info) { | Status AicpuExtInfoHandler::ParseExtShapeType(AicpuExtInfo *aicpu_ext_info) { | ||||
GE_CHK_BOOL_RET_STATUS(aicpu_ext_info->infoLen == sizeof(int32_t), PARAM_INVALID, | |||||
GE_CHK_BOOL_RET_STATUS(aicpu_ext_info->infoLen == sizeof(int32_t), ACL_ERROR_GE_PARAM_INVALID, | |||||
"Node[%s] parse ext shape type failed as infoLen must be %zu but %u.", | "Node[%s] parse ext shape type failed as infoLen must be %zu but %u.", | ||||
node_name_.c_str(), sizeof(int32_t), aicpu_ext_info->infoLen); | node_name_.c_str(), sizeof(int32_t), aicpu_ext_info->infoLen); | ||||
auto type = reinterpret_cast<const int32_t *>(aicpu_ext_info->infoMsg); | auto type = reinterpret_cast<const int32_t *>(aicpu_ext_info->infoMsg); | ||||
GE_CHK_BOOL_RET_STATUS(*type == unknown_type_, PARAM_INVALID, | |||||
GE_CHK_BOOL_RET_STATUS(*type == unknown_type_, ACL_ERROR_GE_PARAM_INVALID, | |||||
"Node[%s] parse ext shape type failed as need %d but %d.", | "Node[%s] parse ext shape type failed as need %d but %d.", | ||||
node_name_.c_str(), unknown_type_, *type); | node_name_.c_str(), unknown_type_, *type); | ||||
GELOGI("Node[%s] parse ext shape type success infoLen=%u.", node_name_.c_str(), aicpu_ext_info->infoLen); | GELOGI("Node[%s] parse ext shape type success infoLen=%u.", node_name_.c_str(), aicpu_ext_info->infoLen); | ||||
@@ -95,7 +96,7 @@ Status AicpuExtInfoHandler::ParseExtShapeType(AicpuExtInfo *aicpu_ext_info) { | |||||
Status AicpuExtInfoHandler::ParseExtInputShape(AicpuExtInfo *aicpu_ext_info) { | Status AicpuExtInfoHandler::ParseExtInputShape(AicpuExtInfo *aicpu_ext_info) { | ||||
auto need_len = input_num_ * sizeof(AicpuShapeAndType); | auto need_len = input_num_ * sizeof(AicpuShapeAndType); | ||||
GE_CHK_BOOL_RET_STATUS(aicpu_ext_info->infoLen == need_len, PARAM_INVALID, | |||||
GE_CHK_BOOL_RET_STATUS(aicpu_ext_info->infoLen == need_len, ACL_ERROR_GE_PARAM_INVALID, | |||||
"Node[%s] parse ext input shape failed as infoLen must be " | "Node[%s] parse ext input shape failed as infoLen must be " | ||||
"input_num[%u]*sizeof(ShapeAndType)[%zu] but %u.", | "input_num[%u]*sizeof(ShapeAndType)[%zu] but %u.", | ||||
node_name_.c_str(), input_num_, sizeof(AicpuShapeAndType), aicpu_ext_info->infoLen); | node_name_.c_str(), input_num_, sizeof(AicpuShapeAndType), aicpu_ext_info->infoLen); | ||||
@@ -116,7 +117,7 @@ Status AicpuExtInfoHandler::ParseExtOutputShape(AicpuExtInfo *aicpu_ext_info) { | |||||
return SUCCESS; | return SUCCESS; | ||||
} | } | ||||
auto need_len = output_num_ * sizeof(AicpuShapeAndType); | auto need_len = output_num_ * sizeof(AicpuShapeAndType); | ||||
GE_CHK_BOOL_RET_STATUS(aicpu_ext_info->infoLen == need_len, PARAM_INVALID, | |||||
GE_CHK_BOOL_RET_STATUS(aicpu_ext_info->infoLen == need_len, ACL_ERROR_GE_PARAM_INVALID, | |||||
"Node[%s] parse ext output shape failed as infoLen must be " | "Node[%s] parse ext output shape failed as infoLen must be " | ||||
"output_num[%u]*sizeof(ShapeAndType)[%zu] but %u.", | "output_num[%u]*sizeof(ShapeAndType)[%zu] but %u.", | ||||
node_name_.c_str(), output_num_, sizeof(AicpuShapeAndType), aicpu_ext_info->infoLen); | node_name_.c_str(), output_num_, sizeof(AicpuShapeAndType), aicpu_ext_info->infoLen); | ||||
@@ -130,7 +131,7 @@ Status AicpuExtInfoHandler::ParseExtOutputShape(AicpuExtInfo *aicpu_ext_info) { | |||||
} | } | ||||
Status AicpuExtInfoHandler::ParseExtSessionInfo(AicpuExtInfo *aicpu_ext_info) { | Status AicpuExtInfoHandler::ParseExtSessionInfo(AicpuExtInfo *aicpu_ext_info) { | ||||
GE_CHK_BOOL_RET_STATUS(aicpu_ext_info->infoLen == sizeof(AicpuSessionInfo), PARAM_INVALID, | |||||
GE_CHK_BOOL_RET_STATUS(aicpu_ext_info->infoLen == sizeof(AicpuSessionInfo), ACL_ERROR_GE_PARAM_INVALID, | |||||
"Node[%s] parse ext session info failed as infoLen must be %zu but %u.", | "Node[%s] parse ext session info failed as infoLen must be %zu but %u.", | ||||
node_name_.c_str(), sizeof(SessionInfo), aicpu_ext_info->infoLen); | node_name_.c_str(), sizeof(SessionInfo), aicpu_ext_info->infoLen); | ||||
@@ -173,7 +174,7 @@ Status AicpuExtInfoHandler::UpdateInputShapeAndType(uint32_t input_index, const | |||||
} | } | ||||
Status AicpuExtInfoHandler::UpdateOutputShapeAndType(uint32_t output_index, const GeTensorDesc &output_desc) { | Status AicpuExtInfoHandler::UpdateOutputShapeAndType(uint32_t output_index, const GeTensorDesc &output_desc) { | ||||
GE_CHK_BOOL_RET_STATUS((unknown_type_ != DEPEND_COMPUTE), INTERNAL_ERROR, | |||||
GE_CHK_BOOL_RET_STATUS((unknown_type_ != DEPEND_COMPUTE), ACL_ERROR_GE_INTERNAL_ERROR, | |||||
"Node[%s] is depend compute is no need update output shape and type by ext.", | "Node[%s] is depend compute is no need update output shape and type by ext.", | ||||
node_name_.c_str()); | node_name_.c_str()); | ||||
GE_CHECK_LE(output_index, output_num_); | GE_CHECK_LE(output_index, output_num_); | ||||
@@ -183,7 +184,7 @@ Status AicpuExtInfoHandler::UpdateOutputShapeAndType(uint32_t output_index, cons | |||||
if (unknown_type_ == DEPEND_SHAPE_RANGE) { | if (unknown_type_ == DEPEND_SHAPE_RANGE) { | ||||
std::vector<std::pair<int64_t, int64_t>> range; | std::vector<std::pair<int64_t, int64_t>> range; | ||||
auto range_ret = output_desc.GetShapeRange(range); | auto range_ret = output_desc.GetShapeRange(range); | ||||
GE_CHK_BOOL_RET_STATUS(range_ret == GRAPH_SUCCESS, INTERNAL_ERROR, | |||||
GE_CHK_BOOL_RET_STATUS(range_ret == GRAPH_SUCCESS, ACL_ERROR_GE_INTERNAL_ERROR, | |||||
"Node[%s] is shape range type but get GetShapeRange failed, ret=%u.", | "Node[%s] is shape range type but get GetShapeRange failed, ret=%u.", | ||||
node_name_.c_str(), range_ret); | node_name_.c_str(), range_ret); | ||||
for (size_t k = 0; k < range.size(); ++k) { | for (size_t k = 0; k < range.size(); ++k) { | ||||
@@ -210,9 +211,9 @@ Status AicpuExtInfoHandler::UpdateShapeAndType(const GeShape &shape, DataType da | |||||
AicpuShapeAndType *shape_and_type) { | AicpuShapeAndType *shape_and_type) { | ||||
auto dim_num = shape.GetDimNum(); | auto dim_num = shape.GetDimNum(); | ||||
if (dim_num > aicpu::FWKAdapter::kMaxShapeDims) { | if (dim_num > aicpu::FWKAdapter::kMaxShapeDims) { | ||||
GELOGE(PARAM_INVALID, "Update shape and type failed, as dim_num %zu is over max shape dims %u.", | |||||
GELOGE(ACL_ERROR_GE_PARAM_INVALID, "Update shape and type failed, as dim_num %zu is over max shape dims %u.", | |||||
dim_num, aicpu::FWKAdapter::kMaxShapeDims); | dim_num, aicpu::FWKAdapter::kMaxShapeDims); | ||||
return PARAM_INVALID; | |||||
return ACL_ERROR_GE_PARAM_INVALID; | |||||
} | } | ||||
size_t index = 0; | size_t index = 0; | ||||
for (; index < dim_num; ++index) { | for (; index < dim_num; ++index) { | ||||
@@ -57,9 +57,10 @@ Status ProfilingTaskInfo(OpTask *op_task, const string &shape_type) { | |||||
std::vector<TaskDescInfo> task_desc_info; | std::vector<TaskDescInfo> task_desc_info; | ||||
uint32_t task_id = 0; | uint32_t task_id = 0; | ||||
uint32_t stream_id = 0; | uint32_t stream_id = 0; | ||||
if (rtGetTaskIdAndStreamID(&task_id, &stream_id) != RT_ERROR_NONE) { | |||||
GELOGE(ACL_ERROR_GE_PARAM_INVALID, "Get task_id and stream_id failed."); | |||||
return ACL_ERROR_GE_PARAM_INVALID; | |||||
auto rt_ret = rtGetTaskIdAndStreamID(&task_id, &stream_id); | |||||
if (rt_ret != RT_ERROR_NONE) { | |||||
GELOGE(rt_ret, "Get task_id and stream_id failed."); | |||||
return RT_ERROR_TO_GE_STATUS(rt_ret); | |||||
} | } | ||||
TaskDescInfo tmp_task_desc_info; | TaskDescInfo tmp_task_desc_info; | ||||
@@ -141,7 +141,7 @@ Status SingleOpManager::GetResourceId(rtStream_t stream, uintptr_t &resource_id) | |||||
auto rt_err = rtCtxGetCurrent(&rt_cur_ctx); | auto rt_err = rtCtxGetCurrent(&rt_cur_ctx); | ||||
if (rt_err != RT_ERROR_NONE) { | if (rt_err != RT_ERROR_NONE) { | ||||
GELOGE(rt_err, "get current context failed, runtime result is %d", static_cast<int>(rt_err)); | GELOGE(rt_err, "get current context failed, runtime result is %d", static_cast<int>(rt_err)); | ||||
return rt_err; | |||||
return RT_ERROR_TO_GE_STATUS(rt_err); | |||||
} | } | ||||
// use current context as resource key instead | // use current context as resource key instead | ||||
GELOGI("use context as resource key instead when default stream"); | GELOGI("use context as resource key instead when default stream"); | ||||
@@ -438,8 +438,8 @@ Status SingleOpModel::BuildTaskListForDynamicOp(DynamicSingleOp &single_op) { | |||||
auto task_type = static_cast<rtModelTaskType_t>(task_def.type()); | auto task_type = static_cast<rtModelTaskType_t>(task_def.type()); | ||||
if (task_type == RT_MODEL_TASK_KERNEL) { | if (task_type == RT_MODEL_TASK_KERNEL) { | ||||
if (single_op.op_task_ != nullptr) { | if (single_op.op_task_ != nullptr) { | ||||
GELOGE(UNSUPPORTED, "Do not support dynamic op with multiple tasks."); | |||||
return UNSUPPORTED; | |||||
GELOGE(ACL_ERROR_GE_OP_TASK_TYPE_INVALID, "Do not support dynamic op with multiple tasks."); | |||||
return ACL_ERROR_GE_OP_TASK_TYPE_INVALID; | |||||
} | } | ||||
GE_CHK_STATUS_RET_NOLOG(BuildModelTaskKernel(task_def, single_op)); | GE_CHK_STATUS_RET_NOLOG(BuildModelTaskKernel(task_def, single_op)); | ||||
} else if (task_type == RT_MODEL_TASK_KERNEL_EX) { | } else if (task_type == RT_MODEL_TASK_KERNEL_EX) { | ||||
@@ -30,8 +30,8 @@ namespace ge { | |||||
auto sec_ret = memcpy_s(&fwk_op_kernel, sizeof(STR_FWK_OP_KERNEL), | auto sec_ret = memcpy_s(&fwk_op_kernel, sizeof(STR_FWK_OP_KERNEL), | ||||
kernel_def_.args().data(), kernel_def_.args().size()); | kernel_def_.args().data(), kernel_def_.args().size()); | ||||
if (sec_ret != EOK) { | if (sec_ret != EOK) { | ||||
GELOGE(ACL_ERROR_GE_INTERNAL_ERROR, "memcpy failed, ret: %d", sec_ret); | |||||
return ACL_ERROR_GE_INTERNAL_ERROR; | |||||
GELOGE(ACL_ERROR_GE_MEMORY_OPERATE_FAILED, "memcpy failed, ret: %d", sec_ret); | |||||
return ACL_ERROR_GE_MEMORY_OPERATE_FAILED; | |||||
} | } | ||||
auto io_addr_val = static_cast<uint64_t>(reinterpret_cast<uintptr_t>(io_addr)); | auto io_addr_val = static_cast<uint64_t>(reinterpret_cast<uintptr_t>(io_addr)); | ||||
@@ -46,7 +46,7 @@ namespace ge { | |||||
auto rt_ret = rtMalloc(&fwk_op_args, sizeof(STR_FWK_OP_KERNEL), RT_MEMORY_HBM); | auto rt_ret = rtMalloc(&fwk_op_args, sizeof(STR_FWK_OP_KERNEL), RT_MEMORY_HBM); | ||||
if (rt_ret != RT_ERROR_NONE) { | if (rt_ret != RT_ERROR_NONE) { | ||||
GELOGE(rt_ret, "malloc arg memory failed, ret = %d", rt_ret); | GELOGE(rt_ret, "malloc arg memory failed, ret = %d", rt_ret); | ||||
return rt_ret; | |||||
return RT_ERROR_TO_GE_STATUS(rt_ret); | |||||
} | } | ||||
rt_ret = rtMemcpy(fwk_op_args, sizeof(STR_FWK_OP_KERNEL), &fwk_op_kernel, | rt_ret = rtMemcpy(fwk_op_args, sizeof(STR_FWK_OP_KERNEL), &fwk_op_kernel, | ||||
@@ -54,7 +54,7 @@ namespace ge { | |||||
if (rt_ret != RT_ERROR_NONE) { | if (rt_ret != RT_ERROR_NONE) { | ||||
(void)rtFree(fwk_op_args); | (void)rtFree(fwk_op_args); | ||||
GELOGE(rt_ret, "copy args failed, ret = %d", rt_ret); | GELOGE(rt_ret, "copy args failed, ret = %d", rt_ret); | ||||
return rt_ret; | |||||
return RT_ERROR_TO_GE_STATUS(rt_ret); | |||||
} | } | ||||
*args = fwk_op_args; | *args = fwk_op_args; | ||||
return SUCCESS; | return SUCCESS; | ||||
@@ -96,7 +96,7 @@ namespace ge { | |||||
// get kernel_ext_info | // get kernel_ext_info | ||||
auto &kernel_ext_info = kernel_def_.kernel_ext_info(); | auto &kernel_ext_info = kernel_def_.kernel_ext_info(); | ||||
auto kernel_ext_info_size = kernel_def_.kernel_ext_info_size(); | auto kernel_ext_info_size = kernel_def_.kernel_ext_info_size(); | ||||
GE_CHK_BOOL_RET_STATUS(kernel_ext_info.size() == kernel_ext_info_size, FAILED, | |||||
GE_CHK_BOOL_RET_STATUS(kernel_ext_info.size() == kernel_ext_info_size, ACL_ERROR_GE_PARAM_INVALID, | |||||
"task def kernel_ext_info.size=%zu, but kernel_ext_info_size=%u.", | "task def kernel_ext_info.size=%zu, but kernel_ext_info_size=%u.", | ||||
kernel_ext_info.size(), kernel_ext_info_size); | kernel_ext_info.size(), kernel_ext_info_size); | ||||
GE_CHK_STATUS_RET(task.SetExtInfoAndType(kernel_ext_info, kernel_id), "Init ext info failed."); | GE_CHK_STATUS_RET(task.SetExtInfoAndType(kernel_ext_info, kernel_id), "Init ext info failed."); | ||||
@@ -45,7 +45,7 @@ void FreeHbm(void *var) { | |||||
Status OpTask::OpenDump(rtStream_t stream) { | Status OpTask::OpenDump(rtStream_t stream) { | ||||
if (DumpManager::GetInstance().GetDumpProperties().IsSingleOpNeedDump()) { | if (DumpManager::GetInstance().GetDumpProperties().IsSingleOpNeedDump()) { | ||||
GELOGI("Dump is open in single op,start to set dump info"); | |||||
GELOGI("Dump is open in single op, start to set dump info"); | |||||
std::vector<uint64_t> input_addrs; | std::vector<uint64_t> input_addrs; | ||||
std::vector<uint64_t> output_adds; | std::vector<uint64_t> output_adds; | ||||
auto input_size = op_desc_->GetInputsSize(); | auto input_size = op_desc_->GetInputsSize(); | ||||
@@ -54,10 +54,10 @@ Status OpTask::OpenDump(rtStream_t stream) { | |||||
size_t arg_num = 0; | size_t arg_num = 0; | ||||
GetIoAddr(arg_base, arg_num); | GetIoAddr(arg_base, arg_num); | ||||
if (arg_num < input_size + output_size) { | if (arg_num < input_size + output_size) { | ||||
GELOGE(FAILED, "io_addrs_for_dump_ size %zu is not equal input and output size %zu", | |||||
GELOGE(ACL_ERROR_GE_DUMP_IO_ADDR_NUM_INVALID, "io_addrs_for_dump_ size %zu is not equal input and output size %zu", | |||||
arg_num, | arg_num, | ||||
input_size + output_size); | input_size + output_size); | ||||
return FAILED; | |||||
return ACL_ERROR_GE_DUMP_IO_ADDR_NUM_INVALID; | |||||
} | } | ||||
for (size_t i = 0; i < input_size; i++) { | for (size_t i = 0; i < input_size; i++) { | ||||
@@ -120,11 +120,11 @@ Status OpTask::DoUpdateArgTable(const SingleOpModelParam ¶m, bool keep_works | |||||
size_t arg_num = 0; | size_t arg_num = 0; | ||||
GetIoAddr(arg_base, arg_num); | GetIoAddr(arg_base, arg_num); | ||||
if (arg_num < all_addresses.size()) { | if (arg_num < all_addresses.size()) { | ||||
GELOGE(INTERNAL_ERROR, "[%s] arg number mismatches, expect at least = %zu, but got = %zu", | |||||
GELOGE(ACL_ERROR_GE_INTERNAL_ERROR, "[%s] arg number mismatches, expect at least = %zu, but got = %zu", | |||||
op_desc_->GetName().c_str(), | op_desc_->GetName().c_str(), | ||||
all_addresses.size(), | all_addresses.size(), | ||||
arg_num); | arg_num); | ||||
return INTERNAL_ERROR; | |||||
return ACL_ERROR_GE_INTERNAL_ERROR; | |||||
} | } | ||||
for (void *addr : all_addresses) { | for (void *addr : all_addresses) { | ||||
@@ -178,8 +178,8 @@ Status TbeOpTask::LaunchKernel(rtStream_t stream) { | |||||
} | } | ||||
if (ret != RT_ERROR_NONE) { | if (ret != RT_ERROR_NONE) { | ||||
GELOGE(RT_FAILED, "Invoke rtKernelLaunch failed. ret = %d, task = %s", ret, this->stub_name_.c_str()); | |||||
return RT_FAILED; | |||||
GELOGE(ret, "Invoke rtKernelLaunch failed. ret = %d, task = %s", ret, this->stub_name_.c_str()); | |||||
return RT_ERROR_TO_GE_STATUS(ret); | |||||
} | } | ||||
GELOGI("[TASK_INFO] %s", this->stub_name_.c_str()); | GELOGI("[TASK_INFO] %s", this->stub_name_.c_str()); | ||||
auto status = OpenDump(stream); | auto status = OpenDump(stream); | ||||
@@ -199,8 +199,8 @@ Status TbeOpTask::UpdateRunInfo(const vector<GeTensorDesc> &input_desc, const ve | |||||
run_info.block_dim = 0; | run_info.block_dim = 0; | ||||
auto ret = optiling::OpParaCalculate(*node_, run_info); | auto ret = optiling::OpParaCalculate(*node_, run_info); | ||||
if (ret != GRAPH_SUCCESS) { | if (ret != GRAPH_SUCCESS) { | ||||
GELOGE(FAILED, "Failed to invoke OpParaCalculate. ret = %u", ret); | |||||
return FAILED; | |||||
GELOGE(ACL_ERROR_GE_INTERNAL_ERROR, "Failed to invoke OpParaCalculate. ret = %u", ret); | |||||
return ACL_ERROR_GE_INTERNAL_ERROR; | |||||
} | } | ||||
block_dim_ = run_info.block_dim; | block_dim_ = run_info.block_dim; | ||||
tiling_data_ = run_info.tiling_data.str(); | tiling_data_ = run_info.tiling_data.str(); | ||||
@@ -223,8 +223,8 @@ Status TbeOpTask::UpdateTensorDesc(const GeTensorDesc &src_tensor, GeTensorDesc | |||||
} else { | } else { | ||||
std::vector<int64_t> storage_shape; | std::vector<int64_t> storage_shape; | ||||
if (!AttrUtils::GetListInt(src_tensor, ge::ATTR_NAME_STORAGE_SHAPE, storage_shape)) { | if (!AttrUtils::GetListInt(src_tensor, ge::ATTR_NAME_STORAGE_SHAPE, storage_shape)) { | ||||
GELOGE(PARAM_INVALID, "Failed to get storage_shape while storage_format was set"); | |||||
return PARAM_INVALID; | |||||
GELOGE(ACL_ERROR_GE_INTERNAL_ERROR, "Failed to get storage_shape while storage_format was set"); | |||||
return ACL_ERROR_GE_INTERNAL_ERROR; | |||||
} | } | ||||
GELOGD("Storage format set. update shape to [%s], and original shape to [%s]", | GELOGD("Storage format set. update shape to [%s], and original shape to [%s]", | ||||
@@ -273,7 +273,9 @@ Status TbeOpTask::AllocateWorkspaces(const vector<int64_t> &workspace_sizes) { | |||||
std::vector<int64_t> ws_offsets; | std::vector<int64_t> ws_offsets; | ||||
for (auto ws_size : workspace_sizes) { | for (auto ws_size : workspace_sizes) { | ||||
// alignment and padding should be done in OpParaCalculate | // alignment and padding should be done in OpParaCalculate | ||||
GE_CHK_STATUS_RET_NOLOG(CheckInt64AddOverflow(total_size, ws_size)); | |||||
if (CheckInt64AddOverflow(total_size, ws_size) != SUCCESS) { | |||||
return ACL_ERROR_GE_INTERNAL_ERROR; | |||||
} | |||||
ws_offsets.emplace_back(total_size); | ws_offsets.emplace_back(total_size); | ||||
total_size += ws_size; | total_size += ws_size; | ||||
} | } | ||||
@@ -321,8 +323,9 @@ Status TbeOpTask::LaunchKernel(const vector<GeTensorDesc> &input_desc, | |||||
} | } | ||||
if (memcpy_s(args_.get(), arg_size_, args.data(), args.size() * sizeof(void *)) != EOK) { | if (memcpy_s(args_.get(), arg_size_, args.data(), args.size() * sizeof(void *)) != EOK) { | ||||
GELOGE(INTERNAL_ERROR, "[%s] Failed to update kernel args.", node_->GetName().c_str()); | |||||
return INTERNAL_ERROR; | |||||
GELOGE(ACL_ERROR_GE_MEMORY_OPERATE_FAILED, "[%s] Failed to update kernel args.", | |||||
node_->GetName().c_str()); | |||||
return ACL_ERROR_GE_MEMORY_OPERATE_FAILED; | |||||
} | } | ||||
GELOGD("[%s] Start to invoke rtKernelLaunch", node_->GetName().c_str()); | GELOGD("[%s] Start to invoke rtKernelLaunch", node_->GetName().c_str()); | ||||
@@ -360,7 +363,7 @@ Status AiCpuBaseTask::SetExtInfoAndType(const std::string &kernel_ext_info, uint | |||||
num_inputs_, | num_inputs_, | ||||
num_outputs_, | num_outputs_, | ||||
unknown_type_)); | unknown_type_)); | ||||
GE_CHK_BOOL_RET_STATUS(aicpu_ext_handle_ != nullptr, FAILED, "Malloc aicpu_ext_handle mem failed!"); | |||||
GE_CHK_BOOL_RET_STATUS(aicpu_ext_handle_ != nullptr, ACL_ERROR_GE_MEMORY_ALLOCATION, "Malloc aicpu_ext_handle mem failed!"); | |||||
Status ret = aicpu_ext_handle_->Parse(kernel_ext_info); | Status ret = aicpu_ext_handle_->Parse(kernel_ext_info); | ||||
if (ret != SUCCESS) { | if (ret != SUCCESS) { | ||||
@@ -418,7 +421,7 @@ Status AiCpuBaseTask::UpdateExtInfo(const std::vector<GeTensorDesc> &input_desc, | |||||
"Input[%zu] update input shape failed.", input_index); | "Input[%zu] update input shape failed.", input_index); | ||||
continue; | continue; | ||||
} | } | ||||
GE_CHK_BOOL_RET_STATUS(non_const_index < input_desc.size(), PARAM_INVALID, | |||||
GE_CHK_BOOL_RET_STATUS(non_const_index < input_desc.size(), ACL_ERROR_GE_PARAM_INVALID, | |||||
"Input_desc size is %zu, but get non_const_index is %zu", | "Input_desc size is %zu, but get non_const_index is %zu", | ||||
input_desc.size(), non_const_index); | input_desc.size(), non_const_index); | ||||
GE_CHK_STATUS_RET(aicpu_ext_handle_->UpdateInputShapeAndType(input_index, input_desc[non_const_index]), | GE_CHK_STATUS_RET(aicpu_ext_handle_->UpdateInputShapeAndType(input_index, input_desc[non_const_index]), | ||||
@@ -511,7 +514,7 @@ Status AiCpuBaseTask::UpdateIoAddr(const vector<DataBuffer> &inputs, const vecto | |||||
arg_base++; | arg_base++; | ||||
continue; | continue; | ||||
} | } | ||||
GE_CHK_BOOL_RET_STATUS(non_const_index < inputs.size(), PARAM_INVALID, | |||||
GE_CHK_BOOL_RET_STATUS(non_const_index < inputs.size(), ACL_ERROR_GE_PARAM_INVALID, | |||||
"Input size is %zu, but get non_const_index is %zu", | "Input size is %zu, but get non_const_index is %zu", | ||||
inputs.size(), non_const_index); | inputs.size(), non_const_index); | ||||
auto addr = inputs[non_const_index].data; | auto addr = inputs[non_const_index].data; | ||||
@@ -561,15 +564,15 @@ Status AiCpuTask::LaunchKernel(rtStream_t stream) { | |||||
RT_MEMCPY_HOST_TO_DEVICE_EX, | RT_MEMCPY_HOST_TO_DEVICE_EX, | ||||
stream); | stream); | ||||
if (ret != RT_ERROR_NONE) { | if (ret != RT_ERROR_NONE) { | ||||
GELOGE(RT_FAILED, "rtMemcpyAsync workspace data failed. ret = %d, task = %s", ret, this->op_type_.c_str()); | |||||
return RT_FAILED; | |||||
GELOGE(ret, "rtMemcpyAsync workspace data failed. ret = %d, task = %s", ret, this->op_type_.c_str()); | |||||
return RT_ERROR_TO_GE_STATUS(ret); | |||||
} | } | ||||
GELOGI("To invoke rtKernelLaunchEx. task = %s", this->op_type_.c_str()); | GELOGI("To invoke rtKernelLaunchEx. task = %s", this->op_type_.c_str()); | ||||
ret = rtKernelLaunchEx(args_, arg_size_, 0, stream); | ret = rtKernelLaunchEx(args_, arg_size_, 0, stream); | ||||
if (ret != RT_ERROR_NONE) { | if (ret != RT_ERROR_NONE) { | ||||
GELOGE(RT_FAILED, "Invoke rtKernelLaunch failed. ret = %d, task = %s", ret, this->op_type_.c_str()); | |||||
return RT_FAILED; | |||||
GELOGE(ret, "Invoke rtKernelLaunch failed. ret = %d, task = %s", ret, this->op_type_.c_str()); | |||||
return RT_ERROR_TO_GE_STATUS(ret); | |||||
} | } | ||||
GELOGI("[TASK_INFO] %lu/%s", kernel_id_, op_type_.c_str()); | GELOGI("[TASK_INFO] %lu/%s", kernel_id_, op_type_.c_str()); | ||||
@@ -747,9 +750,9 @@ Status AiCpuTask::InitForSummaryAndCopy() { | |||||
Status AiCpuTask::SetMemCopyTask(const domi::KernelExDef &kernel_def) { | Status AiCpuTask::SetMemCopyTask(const domi::KernelExDef &kernel_def) { | ||||
if (kernel_def.args_size() > sizeof(STR_FWK_OP_KERNEL)) { | if (kernel_def.args_size() > sizeof(STR_FWK_OP_KERNEL)) { | ||||
GELOGE(PARAM_INVALID, "sizeof STR_FWK_OP_KERNEL is: %lu, but args_size is: %d", | |||||
GELOGE(ACL_ERROR_GE_PARAM_INVALID, "sizeof STR_FWK_OP_KERNEL is: %lu, but args_size is: %d", | |||||
sizeof(STR_FWK_OP_KERNEL), kernel_def.args_size()); | sizeof(STR_FWK_OP_KERNEL), kernel_def.args_size()); | ||||
return PARAM_INVALID; | |||||
return ACL_ERROR_GE_PARAM_INVALID; | |||||
} | } | ||||
GE_CHK_RT_RET(rtMalloc(©_workspace_buf_, kernel_def.task_info_size(), RT_MEMORY_HBM)); | GE_CHK_RT_RET(rtMalloc(©_workspace_buf_, kernel_def.task_info_size(), RT_MEMORY_HBM)); | ||||
GE_CHK_RT_RET(rtMemcpy(copy_workspace_buf_, kernel_def.task_info_size(), | GE_CHK_RT_RET(rtMemcpy(copy_workspace_buf_, kernel_def.task_info_size(), | ||||
@@ -759,8 +762,8 @@ Status AiCpuTask::SetMemCopyTask(const domi::KernelExDef &kernel_def) { | |||||
auto sec_ret = memcpy_s(&aicpu_task, sizeof(STR_FWK_OP_KERNEL), | auto sec_ret = memcpy_s(&aicpu_task, sizeof(STR_FWK_OP_KERNEL), | ||||
kernel_def.args().data(), kernel_def.args().size()); | kernel_def.args().data(), kernel_def.args().size()); | ||||
if (sec_ret != EOK) { | if (sec_ret != EOK) { | ||||
GELOGE(FAILED, "memcpy failed, ret: %d", sec_ret); | |||||
return FAILED; | |||||
GELOGE(ACL_ERROR_GE_MEMORY_OPERATE_FAILED, "memcpy failed, ret: %d", sec_ret); | |||||
return ACL_ERROR_GE_MEMORY_OPERATE_FAILED; | |||||
} | } | ||||
aicpu_task.fwkKernelBase.fwk_kernel.inputOutputAddr = reinterpret_cast<uintptr_t>(copy_ioaddr_dev_); | aicpu_task.fwkKernelBase.fwk_kernel.inputOutputAddr = reinterpret_cast<uintptr_t>(copy_ioaddr_dev_); | ||||
@@ -844,7 +847,7 @@ Status AiCpuCCTask::LaunchKernel(rtStream_t stream) { | |||||
sm_desc, stream, dump_flag_); | sm_desc, stream, dump_flag_); | ||||
if (ret != RT_ERROR_NONE) { | if (ret != RT_ERROR_NONE) { | ||||
GELOGE(ret, "Invoke rtCpuKernelLaunch failed. ret = %d", ret); | GELOGE(ret, "Invoke rtCpuKernelLaunch failed. ret = %d", ret); | ||||
return ret; | |||||
return RT_ERROR_TO_GE_STATUS(ret); | |||||
} | } | ||||
GELOGI("[TASK_INFO] %lu/%s", kernel_id_, op_type_.c_str()); | GELOGI("[TASK_INFO] %lu/%s", kernel_id_, op_type_.c_str()); | ||||
GELOGD("Invoke rtCpuKernelLaunch succeeded"); | GELOGD("Invoke rtCpuKernelLaunch succeeded"); | ||||
@@ -242,7 +242,7 @@ Status TbeTaskBuilder::SetKernelArgs(TbeOpTask &task, const SingleOpModelParam & | |||||
auto rtRet = rtMemcpy(args.get(), arg_size, kernel_def_.args().data(), arg_size, RT_MEMCPY_HOST_TO_HOST); | auto rtRet = rtMemcpy(args.get(), arg_size, kernel_def_.args().data(), arg_size, RT_MEMCPY_HOST_TO_HOST); | ||||
if (rtRet != RT_ERROR_NONE) { | if (rtRet != RT_ERROR_NONE) { | ||||
GELOGE(rtRet, "rtMemcpy args failed, size = %zu, ret = %d", arg_size, static_cast<int>(rtRet)); | GELOGE(rtRet, "rtMemcpy args failed, size = %zu, ret = %d", arg_size, static_cast<int>(rtRet)); | ||||
return rtRet; | |||||
return RT_ERROR_TO_GE_STATUS(rtRet); | |||||
} | } | ||||
const domi::KernelContext &context = kernel_def_.context(); | const domi::KernelContext &context = kernel_def_.context(); | ||||
@@ -261,7 +261,7 @@ Status TbeTaskBuilder::SetKernelArgs(TbeOpTask &task, const SingleOpModelParam & | |||||
rtRet = rtMemcpy(args.get() + offset, arg_size - offset, src_addr, src_len, RT_MEMCPY_HOST_TO_HOST); | rtRet = rtMemcpy(args.get() + offset, arg_size - offset, src_addr, src_len, RT_MEMCPY_HOST_TO_HOST); | ||||
if (rtRet != RT_ERROR_NONE) { | if (rtRet != RT_ERROR_NONE) { | ||||
GELOGE(rtRet, "rtMemcpy addresses failed, ret = %d", static_cast<int>(rtRet)); | GELOGE(rtRet, "rtMemcpy addresses failed, ret = %d", static_cast<int>(rtRet)); | ||||
return rtRet; | |||||
return RT_ERROR_TO_GE_STATUS(rtRet); | |||||
} | } | ||||
} | } | ||||
@@ -287,7 +287,7 @@ Status TbeTaskBuilder::BuildTask(TbeOpTask &task, const SingleOpModelParam ¶ | |||||
auto rtRet = rtGetFunctionByName(stub_name_.c_str(), &stub_func); | auto rtRet = rtGetFunctionByName(stub_name_.c_str(), &stub_func); | ||||
if (rtRet != SUCCESS) { | if (rtRet != SUCCESS) { | ||||
GELOGE(rtRet, "rtGetFunctionByName failed."); | GELOGE(rtRet, "rtGetFunctionByName failed."); | ||||
return rtRet; | |||||
return RT_ERROR_TO_GE_STATUS(rtRet); | |||||
} | } | ||||
task.SetStubFunc(stub_name_, stub_func); | task.SetStubFunc(stub_name_, stub_func); | ||||
@@ -109,6 +109,12 @@ GE_ERRORNO_EXTERNAL(ACL_ERROR_GE_AIPP_NOT_EXIST, "AIPP parameter not exist."); | |||||
GE_ERRORNO_EXTERNAL(ACL_ERROR_GE_AIPP_MODE_INVALID, "AIPP mode invalid."); | GE_ERRORNO_EXTERNAL(ACL_ERROR_GE_AIPP_MODE_INVALID, "AIPP mode invalid."); | ||||
GE_ERRORNO_EXTERNAL(ACL_ERROR_GE_OP_TASK_TYPE_INVALID, "Task type invalid."); | GE_ERRORNO_EXTERNAL(ACL_ERROR_GE_OP_TASK_TYPE_INVALID, "Task type invalid."); | ||||
GE_ERRORNO_EXTERNAL(ACL_ERROR_GE_OP_KERNEL_TYPE_INVALID, "Kernel type invalid."); | GE_ERRORNO_EXTERNAL(ACL_ERROR_GE_OP_KERNEL_TYPE_INVALID, "Kernel type invalid."); | ||||
GE_ERRORNO_EXTERNAL(ACL_ERROR_GE_PLGMGR_PATH_INVALID, "Plugin path is invalid."); | |||||
GE_ERRORNO_EXTERNAL(ACL_ERROR_GE_EXEC_MODEL_PARTITION_NUM_INVALID, "Number of model partition is invalid."); | |||||
GE_ERRORNO_EXTERNAL(ACL_ERROR_GE_EXEC_MODEL_NOT_SUPPORT_ENCRYPTION, "Model not support encryption."); | |||||
GE_ERRORNO_EXTERNAL(ACL_ERROR_GE_TRANSSHAPE_FORMAT_INVALID, "Format is invalid when transferring shape."); | |||||
GE_ERRORNO_EXTERNAL(ACL_ERROR_GE_TRANSSHAPE_SHAPE_INVALID, "Shape is invalid when transferring shape."); | |||||
GE_ERRORNO_EXTERNAL(ACL_ERROR_GE_TRANSSHAPE_DATATYPE_INVALID, "Datatype is invalid when transferring shape."); | |||||
GE_ERRORNO_EXTERNAL(ACL_ERROR_GE_MEMORY_ALLOCATION, "Memory allocation error."); | GE_ERRORNO_EXTERNAL(ACL_ERROR_GE_MEMORY_ALLOCATION, "Memory allocation error."); | ||||
@@ -122,6 +128,12 @@ GE_ERRORNO_EXTERNAL(ACL_ERROR_GE_EXEC_RELEASE_MODEL_DATA, "Failed to release the | |||||
GE_ERRORNO_EXTERNAL(ACL_ERROR_GE_COMMAND_HANDLE, "Command handle error."); | GE_ERRORNO_EXTERNAL(ACL_ERROR_GE_COMMAND_HANDLE, "Command handle error."); | ||||
GE_ERRORNO_EXTERNAL(ACL_ERROR_GE_GET_TENSOR_INFO, "Get tensor info error."); | GE_ERRORNO_EXTERNAL(ACL_ERROR_GE_GET_TENSOR_INFO, "Get tensor info error."); | ||||
GE_ERRORNO_EXTERNAL(ACL_ERROR_GE_UNLOAD_MODEL, "Load model error."); | GE_ERRORNO_EXTERNAL(ACL_ERROR_GE_UNLOAD_MODEL, "Load model error."); | ||||
GE_ERRORNO_EXTERNAL(ACL_ERROR_GE_INIT_ALLOCATOR_FAILED, "Failed to init allocator."); | |||||
GE_ERRORNO_EXTERNAL(ACL_ERROR_GE_CHECK_RTS_RETURN_VALUE_FAILED, "Get invalid return value from rts."); | |||||
GE_ERRORNO_EXTERNAL(ACL_ERROR_GE_DUMP_IO_ADDR_NUM_INVALID, "Get invalid Io addr num for dump."); | |||||
GE_ERRORNO_EXTERNAL(ACL_ERROR_GE_DUMP_GET_TENSOR_SIZE_FAILED, "Failed to get tensor size for dump."); | |||||
GE_ERRORNO_EXTERNAL(ACL_ERROR_GE_DUMP_PROTOBUF_SERIALIZE_FAILED, "Failed to serialize protobuf for dump."); | |||||
GE_ERRORNO_EXTERNAL(ACL_ERROR_GE_MEMORY_OPERATE_FAILED, "Failed to operate memory."); | |||||
} // namespace ge | } // namespace ge | ||||
@@ -38,6 +38,12 @@ static const uint32_t ACL_ERROR_GE_AIPP_NOT_EXIST = 145015; | |||||
static const uint32_t ACL_ERROR_GE_AIPP_MODE_INVALID = 145016; | static const uint32_t ACL_ERROR_GE_AIPP_MODE_INVALID = 145016; | ||||
static const uint32_t ACL_ERROR_GE_OP_TASK_TYPE_INVALID = 145017; | static const uint32_t ACL_ERROR_GE_OP_TASK_TYPE_INVALID = 145017; | ||||
static const uint32_t ACL_ERROR_GE_OP_KERNEL_TYPE_INVALID = 145018; | static const uint32_t ACL_ERROR_GE_OP_KERNEL_TYPE_INVALID = 145018; | ||||
static const uint32_t ACL_ERROR_GE_PLGMGR_PATH_INVALID = 145019; | |||||
static const uint32_t ACL_ERROR_GE_EXEC_MODEL_NOT_SUPPORT_ENCRYPTION = 145020; | |||||
static const uint32_t ACL_ERROR_GE_EXEC_MODEL_PARTITION_NUM_INVALID = 145021; | |||||
static const uint32_t ACL_ERROR_GE_TRANSSHAPE_FORMAT_INVALID = 145022; | |||||
static const uint32_t ACL_ERROR_GE_TRANSSHAPE_SHAPE_INVALID = 145023; | |||||
static const uint32_t ACL_ERROR_GE_TRANSSHAPE_DATATYPE_INVALID = 145024; | |||||
static const uint32_t ACL_ERROR_GE_MEMORY_ALLOCATION = 245000; | static const uint32_t ACL_ERROR_GE_MEMORY_ALLOCATION = 245000; | ||||
static const uint32_t ACL_ERROR_GE_INTERNAL_ERROR = 545000; | static const uint32_t ACL_ERROR_GE_INTERNAL_ERROR = 545000; | ||||
static const uint32_t ACL_ERROR_GE_LOAD_MODEL = 545001; | static const uint32_t ACL_ERROR_GE_LOAD_MODEL = 545001; | ||||
@@ -49,6 +55,13 @@ static const uint32_t ACL_ERROR_GE_EXEC_RELEASE_MODEL_DATA = 545006; | |||||
static const uint32_t ACL_ERROR_GE_COMMAND_HANDLE = 545007; | static const uint32_t ACL_ERROR_GE_COMMAND_HANDLE = 545007; | ||||
static const uint32_t ACL_ERROR_GE_GET_TENSOR_INFO = 545008; | static const uint32_t ACL_ERROR_GE_GET_TENSOR_INFO = 545008; | ||||
static const uint32_t ACL_ERROR_GE_UNLOAD_MODEL = 545009; | static const uint32_t ACL_ERROR_GE_UNLOAD_MODEL = 545009; | ||||
static const uint32_t ACL_ERROR_GE_INIT_ALLOCATOR_FAILED = 545010; | |||||
static const uint32_t ACL_ERROR_GE_CHECK_RTS_RETURN_VALUE_FAILED = 545011; | |||||
static const uint32_t ACL_ERROR_GE_DUMP_IO_ADDR_NUM_INVALID = 545012; | |||||
static const uint32_t ACL_ERROR_GE_DUMP_GET_TENSOR_SIZE_FAILED = 545013; | |||||
static const uint32_t ACL_ERROR_GE_DUMP_PROTOBUF_SERIALIZE_FAILED = 545014; | |||||
static const uint32_t ACL_ERROR_GE_MEMORY_OPERATE_FAILED = 545015; | |||||
#ifdef __cplusplus | #ifdef __cplusplus | ||||
} // namespace ge | } // namespace ge | ||||
#endif | #endif | ||||
@@ -679,7 +679,7 @@ TEST_F(UtestFormatTransfer5dNhwc, nc1hwc0_to_nhwc_float2) { | |||||
} | } | ||||
Status status = | Status status = | ||||
transfer.TransShape(args.src_format, args.src_shape, args.src_data_type, args.dst_format, args.dst_shape); | transfer.TransShape(args.src_format, args.src_shape, args.src_data_type, args.dst_format, args.dst_shape); | ||||
EXPECT_EQ(status, UNSUPPORTED); | |||||
EXPECT_EQ(status, ACL_ERROR_GE_TRANSSHAPE_FORMAT_INVALID); | |||||
} | } | ||||
TEST_F(UtestFormatTransfer5dNhwc, invalid_src_format) { | TEST_F(UtestFormatTransfer5dNhwc, invalid_src_format) { | ||||
@@ -158,7 +158,7 @@ TEST_F(UtestFormatTransferC1hwncoc0Hwcn, sixd_to_hwcn_fp16_success_lt_cube) { | |||||
} | } | ||||
Status status = | Status status = | ||||
transfer.TransShape(args.src_format, args.src_shape, args.src_data_type, args.dst_format, args.dst_shape); | transfer.TransShape(args.src_format, args.src_shape, args.src_data_type, args.dst_format, args.dst_shape); | ||||
EXPECT_EQ(status, UNSUPPORTED); | |||||
EXPECT_EQ(status, ACL_ERROR_GE_TRANSSHAPE_FORMAT_INVALID); | |||||
} | } | ||||
TEST_F(UtestFormatTransferC1hwncoc0Hwcn, sixd_to_hwcn_gp16_success_eq_cube) { | TEST_F(UtestFormatTransferC1hwncoc0Hwcn, sixd_to_hwcn_gp16_success_eq_cube) { | ||||
@@ -1894,7 +1894,7 @@ TEST_F(UtestFormatTransferNdFractZz, nd_shape4_fp16_1) { | |||||
} | } | ||||
EXPECT_EQ( | EXPECT_EQ( | ||||
transfer2.TransShape(args2.src_format, args2.src_shape, args2.src_data_type, args2.dst_format, args2.dst_shape), | transfer2.TransShape(args2.src_format, args2.src_shape, args2.src_data_type, args2.dst_format, args2.dst_shape), | ||||
UNSUPPORTED); | |||||
ACL_ERROR_GE_TRANSSHAPE_FORMAT_INVALID); | |||||
} | } | ||||
TEST_F(UtestFormatTransferNdFractZz, nd_shape4_fp16) { | TEST_F(UtestFormatTransferNdFractZz, nd_shape4_fp16) { | ||||
@@ -2071,7 +2071,7 @@ TEST_F(UtestFormatTransferNdFractZz, nd_shape4_fp16) { | |||||
} | } | ||||
EXPECT_EQ( | EXPECT_EQ( | ||||
transfer2.TransShape(args2.src_format, args2.src_shape, args2.src_data_type, args2.dst_format, args2.dst_shape), | transfer2.TransShape(args2.src_format, args2.src_shape, args2.src_data_type, args2.dst_format, args2.dst_shape), | ||||
UNSUPPORTED); | |||||
ACL_ERROR_GE_TRANSSHAPE_FORMAT_INVALID); | |||||
} | } | ||||
TEST_F(UtestFormatTransferNdFractZz, nd_shape5_fp16) { | TEST_F(UtestFormatTransferNdFractZz, nd_shape5_fp16) { | ||||
@@ -7879,7 +7879,7 @@ TEST_F(UtestFormatTransferNdFractZz, invalid_src_shape) { | |||||
FormatTransferFractalZz transfer; | FormatTransferFractalZz transfer; | ||||
EXPECT_EQ(transfer.TransFormat(args, result), PARAM_INVALID); | EXPECT_EQ(transfer.TransFormat(args, result), PARAM_INVALID); | ||||
EXPECT_EQ(transfer.TransShape(args.src_format, args.src_shape, args.src_data_type, args.dst_format, args.dst_shape), | EXPECT_EQ(transfer.TransShape(args.src_format, args.src_shape, args.src_data_type, args.dst_format, args.dst_shape), | ||||
PARAM_INVALID); | |||||
ACL_ERROR_GE_TRANSSHAPE_SHAPE_INVALIDACL_ERROR_GE_TRANSSHAPE_SHAPE_INVALID); | |||||
} | } | ||||
TEST_F(UtestFormatTransferNdFractZz, invalid_src_data_type) { | TEST_F(UtestFormatTransferNdFractZz, invalid_src_data_type) { | ||||
@@ -7899,7 +7899,7 @@ TEST_F(UtestFormatTransferNdFractZz, invalid_src_data_type) { | |||||
FormatTransferFractalZz transfer; | FormatTransferFractalZz transfer; | ||||
EXPECT_EQ(transfer.TransFormat(args, result), PARAM_INVALID); | EXPECT_EQ(transfer.TransFormat(args, result), PARAM_INVALID); | ||||
EXPECT_EQ(transfer.TransShape(args.src_format, args.src_shape, args.src_data_type, args.dst_format, args.dst_shape), | EXPECT_EQ(transfer.TransShape(args.src_format, args.src_shape, args.src_data_type, args.dst_format, args.dst_shape), | ||||
PARAM_INVALID); | |||||
ACL_ERROR_GE_TRANSSHAPE_DATATYPE_INVALID); | |||||
} | } | ||||
TEST_F(UtestFormatTransferNdFractZz, invalid_src_format) { | TEST_F(UtestFormatTransferNdFractZz, invalid_src_format) { | ||||
@@ -7914,7 +7914,7 @@ TEST_F(UtestFormatTransferNdFractZz, invalid_src_format) { | |||||
FormatTransferFractalZz transfer; | FormatTransferFractalZz transfer; | ||||
EXPECT_EQ(transfer.TransFormat(args, result), PARAM_INVALID); | EXPECT_EQ(transfer.TransFormat(args, result), PARAM_INVALID); | ||||
EXPECT_EQ(transfer.TransShape(args.src_format, args.src_shape, args.src_data_type, args.dst_format, args.dst_shape), | EXPECT_EQ(transfer.TransShape(args.src_format, args.src_shape, args.src_data_type, args.dst_format, args.dst_shape), | ||||
PARAM_INVALID); | |||||
ACL_ERROR_GE_TRANSSHAPE_FORMAT_INVALID); | |||||
EXPECT_EQ(TransFormat(args, result), UNSUPPORTED); | EXPECT_EQ(TransFormat(args, result), UNSUPPORTED); | ||||
} | } | ||||
@@ -302,7 +302,7 @@ TEST_F(UtestFormatTransferFracZHwcn, fracz_to_hwcn_fp16_success_eq_cube) { | |||||
} | } | ||||
Status status = | Status status = | ||||
transfer.TransShape(args.src_format, args.src_shape, args.src_data_type, args.dst_format, args.dst_shape); | transfer.TransShape(args.src_format, args.src_shape, args.src_data_type, args.dst_format, args.dst_shape); | ||||
EXPECT_EQ(status, UNSUPPORTED); | |||||
EXPECT_EQ(status, ACL_ERROR_GE_TRANSSHAPE_FORMAT_INVALID); | |||||
} | } | ||||
TEST_F(UtestFormatTransferFracZHwcn, fracz_to_hwcn_fp16_success_gt_cube) { | TEST_F(UtestFormatTransferFracZHwcn, fracz_to_hwcn_fp16_success_gt_cube) { | ||||
@@ -302,7 +302,7 @@ TEST_F(UtestFormatTransferFraczNchw, fracz_to_nchw_fp16_success_eq_cube) { | |||||
} | } | ||||
Status status = | Status status = | ||||
transfer.TransShape(args.src_format, args.src_shape, args.src_data_type, args.dst_format, args.dst_shape); | transfer.TransShape(args.src_format, args.src_shape, args.src_data_type, args.dst_format, args.dst_shape); | ||||
EXPECT_EQ(status, UNSUPPORTED); | |||||
EXPECT_EQ(status, ACL_ERROR_GE_TRANSSHAPE_FORMAT_INVALID); | |||||
} | } | ||||
TEST_F(UtestFormatTransferFraczNchw, fracz_to_nchw_fp16_success_gt_cube) { | TEST_F(UtestFormatTransferFraczNchw, fracz_to_nchw_fp16_success_gt_cube) { | ||||
@@ -75,7 +75,7 @@ TEST_F(UtestFormatTransferHwcnC1hwncoc0, hwcn_to_6d_invalid_src_format_nchw) { | |||||
EXPECT_EQ(transfer.TransFormat(args, result), PARAM_INVALID); | EXPECT_EQ(transfer.TransFormat(args, result), PARAM_INVALID); | ||||
Status status = | Status status = | ||||
transfer.TransShape(args.src_format, args.src_shape, args.src_data_type, args.dst_format, args.dst_shape); | transfer.TransShape(args.src_format, args.src_shape, args.src_data_type, args.dst_format, args.dst_shape); | ||||
EXPECT_EQ(status, UNSUPPORTED); | |||||
EXPECT_EQ(status, ACL_ERROR_GE_TRANSSHAPE_FORMAT_INVALID); | |||||
} | } | ||||
TEST_F(UtestFormatTransferHwcnC1hwncoc0, hwcn_to_6d_invalid_dst_format_nc1khkwhwc0) { | TEST_F(UtestFormatTransferHwcnC1hwncoc0, hwcn_to_6d_invalid_dst_format_nc1khkwhwc0) { | ||||
@@ -142,7 +142,7 @@ TEST_F(UtestFormatTransferHwcnC1hwncoc0, hwcn_to_6d_invalid_src_shape3) { | |||||
EXPECT_EQ(transfer.TransFormat(args, result), PARAM_INVALID); | EXPECT_EQ(transfer.TransFormat(args, result), PARAM_INVALID); | ||||
Status status = | Status status = | ||||
transfer.TransShape(args.src_format, args.src_shape, args.src_data_type, args.dst_format, args.dst_shape); | transfer.TransShape(args.src_format, args.src_shape, args.src_data_type, args.dst_format, args.dst_shape); | ||||
EXPECT_EQ(status, PARAM_INVALID); | |||||
EXPECT_EQ(status, ACL_ERROR_GE_TRANSSHAPE_SHAPE_INVALID); | |||||
} | } | ||||
TEST_F(UtestFormatTransferHwcnC1hwncoc0, hwcn_to_6d_invalid_dst_format) { | TEST_F(UtestFormatTransferHwcnC1hwncoc0, hwcn_to_6d_invalid_dst_format) { | ||||
@@ -719,7 +719,7 @@ TEST_F(UtestFormatTransferNhwc5d, invalid_src_format) { | |||||
EXPECT_EQ(transfer.TransFormat(args, result), PARAM_INVALID); | EXPECT_EQ(transfer.TransFormat(args, result), PARAM_INVALID); | ||||
Status status = | Status status = | ||||
transfer.TransShape(args.src_format, args.src_shape, args.src_data_type, args.dst_format, args.dst_shape); | transfer.TransShape(args.src_format, args.src_shape, args.src_data_type, args.dst_format, args.dst_shape); | ||||
EXPECT_EQ(status, UNSUPPORTED); | |||||
EXPECT_EQ(status, ACL_ERROR_GE_TRANSSHAPE_FORMAT_INVALID); | |||||
} | } | ||||
TEST_F(UtestFormatTransferNhwc5d, invalid_dst_shape2) { | TEST_F(UtestFormatTransferNhwc5d, invalid_dst_shape2) { | ||||