@@ -683,7 +683,7 @@ set(MULTI_PARTS_TEST_FILES | |||||
"common/format_transfer_nchw_fractalz_unittest.cc" | "common/format_transfer_nchw_fractalz_unittest.cc" | ||||
"common/format_transfer_hwcn_fractalz_unittest.cc" | "common/format_transfer_hwcn_fractalz_unittest.cc" | ||||
"common/format_transfer_nhwc_fractalz_unittest.cc" | "common/format_transfer_nhwc_fractalz_unittest.cc" | ||||
#"common/format_transfer_fractal_nz_unittest.cc" | |||||
"common/format_transfer_fractal_nz_unittest.cc" | |||||
"common/format_transfer_fractal_zz_unittest.cc" | "common/format_transfer_fractal_zz_unittest.cc" | ||||
"common/format_transfer_nhwc_5d_unittest.cc" | "common/format_transfer_nhwc_5d_unittest.cc" | ||||
"common/format_transfer_5d_nchw_unittest.cc" | "common/format_transfer_5d_nchw_unittest.cc" | ||||
@@ -249,8 +249,7 @@ TEST_F(UtestFormatTransferNdFractNz, nd_shape1_uint8_3) { | |||||
} | } | ||||
*/ | */ | ||||
TEST_F(UtestFormatTransferNdFractNz, nd_shape2_uint8_1) { | |||||
/*TEST_F(UtestFormatTransferNdFractNz, nd_shape2_uint8_1) { | |||||
uint8_t data[32 * 32] = { | uint8_t data[32 * 32] = { | ||||
47, 78, 47, 180, 246, 76, 157, 127, 63, 0, 168, 23, 148, 198, 180, 190, 43, 187, 76, 67, 77, 246, 11, | 47, 78, 47, 180, 246, 76, 157, 127, 63, 0, 168, 23, 148, 198, 180, 190, 43, 187, 76, 67, 77, 246, 11, | ||||
149, 240, 236, 136, 123, 51, 95, 7, 163, 163, 64, 157, 230, 247, 122, 67, 106, 150, 20, 231, 118, 43, 208, | 149, 240, 236, 136, 123, 51, 95, 7, 163, 163, 64, 157, 230, 247, 122, 67, 106, 150, 20, 231, 118, 43, 208, | ||||
@@ -2157,7 +2156,7 @@ TEST_F(UtestFormatTransferNdFractNz, nd_shape3_fp16) { | |||||
for (int i = 0; i < sizeof(data) / sizeof(data[0]); ++i) { | for (int i = 0; i < sizeof(data) / sizeof(data[0]); ++i) { | ||||
EXPECT_EQ((reinterpret_cast<uint16_t *>(result2.data.get()))[i], data[i]); | EXPECT_EQ((reinterpret_cast<uint16_t *>(result2.data.get()))[i], data[i]); | ||||
} | } | ||||
} | |||||
}*/ | |||||
TEST_F(UtestFormatTransferNdFractNz, nd_shape4_fp16) { | TEST_F(UtestFormatTransferNdFractNz, nd_shape4_fp16) { | ||||
uint16_t data[2 * 2 * 17 * 4] = { | uint16_t data[2 * 2 * 17 * 4] = { | ||||
@@ -2333,7 +2332,7 @@ TEST_F(UtestFormatTransferNdFractNz, 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(UtestFormatTransferNdFractNz, nd_shape5_fp16) { | TEST_F(UtestFormatTransferNdFractNz, nd_shape5_fp16) { | ||||
@@ -4785,6 +4784,8 @@ TEST_F(UtestFormatTransferNdFractNz, nd_shape4_fp32) { | |||||
for (int i = 0; i < sizeof(data) / sizeof(data[0]); ++i) { | for (int i = 0; i < sizeof(data) / sizeof(data[0]); ++i) { | ||||
EXPECT_EQ((reinterpret_cast<float *>(result2.data.get()))[i], data[i]); | EXPECT_EQ((reinterpret_cast<float *>(result2.data.get()))[i], data[i]); | ||||
} | } | ||||
EXPECT_EQ(transfer2.TransShape(args.src_format, args.src_shape, args.src_data_type, args.dst_format, args.dst_shape), | |||||
ACL_ERROR_GE_TRANSSHAPE_FORMAT_INVALID); | |||||
} | } | ||||
TEST_F(UtestFormatTransferNdFractNz, nchw_shape4_fp32) { | TEST_F(UtestFormatTransferNdFractNz, nchw_shape4_fp32) { | ||||
@@ -9059,7 +9060,7 @@ TEST_F(UtestFormatTransferNdFractNz, invalid_src_shape) { | |||||
FormatTransferFractalNz transfer; | FormatTransferFractalNz 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_INVALID); | |||||
} | } | ||||
TEST_F(UtestFormatTransferNdFractNz, invalid_src_data_type) { | TEST_F(UtestFormatTransferNdFractNz, invalid_src_data_type) { | ||||
@@ -9079,7 +9080,7 @@ TEST_F(UtestFormatTransferNdFractNz, invalid_src_data_type) { | |||||
FormatTransferFractalNz transfer; | FormatTransferFractalNz 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(UtestFormatTransferNdFractNz, invalid_src_format) { | TEST_F(UtestFormatTransferNdFractNz, invalid_src_format) { | ||||
@@ -9094,8 +9095,7 @@ TEST_F(UtestFormatTransferNdFractNz, invalid_src_format) { | |||||
FormatTransferFractalNz transfer; | FormatTransferFractalNz 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); | |||||
EXPECT_EQ(TransFormat(args, result), UNSUPPORTED); | |||||
ACL_ERROR_GE_TRANSSHAPE_SHAPE_INVALID); | |||||
} | } | ||||
TEST_F(UtestFormatTransferNdFractNz, invalid_dst_shape) { | TEST_F(UtestFormatTransferNdFractNz, invalid_dst_shape) { | ||||
@@ -9136,6 +9136,24 @@ TEST_F(UtestFormatTransferNdFractNz, invalid_src_data_type2) { | |||||
EXPECT_EQ(transfer.TransFormat(args, result), PARAM_INVALID); | EXPECT_EQ(transfer.TransFormat(args, result), PARAM_INVALID); | ||||
} | } | ||||
TEST_F(UtestFormatTransferNdFractNz, invalid_src_data_type3) { | |||||
uint16_t data[1 * 1 * 1 * 16 * 16] = {0}; | |||||
TransArgs args{reinterpret_cast<uint8_t *>(data), | |||||
FORMAT_FRACTAL_NZ, | |||||
FORMAT_NHWC, | |||||
{1, 1, 1, 16, 16}, | |||||
{ | |||||
1, | |||||
1, | |||||
4, | |||||
4, | |||||
}, | |||||
DT_VARIANT}; | |||||
TransResult result; | |||||
FormatTransferFractalNzND transfer; | |||||
EXPECT_EQ(transfer.TransFormat(args, result), PARAM_INVALID); | |||||
} | |||||
TEST_F(UtestFormatTransferNdFractNz, invalid_dst_format2) { | TEST_F(UtestFormatTransferNdFractNz, invalid_dst_format2) { | ||||
uint16_t data[1 * 1 * 1 * 1 * 16 * 16] = {0}; | uint16_t data[1 * 1 * 1 * 1 * 16 * 16] = {0}; | ||||
TransArgs args{reinterpret_cast<uint8_t *>(data), | TransArgs args{reinterpret_cast<uint8_t *>(data), | ||||
@@ -633,5 +633,14 @@ TEST_F(UtestFormatTransferNchw5d, unsupport_dst_format) { | |||||
TransResult result; | TransResult result; | ||||
EXPECT_NE(transfer.TransFormat(args, result), SUCCESS); | EXPECT_NE(transfer.TransFormat(args, result), SUCCESS); | ||||
} | } | ||||
TEST_F(UtestFormatTransferNchw5d, invalid_data_format) { | |||||
uint16_t data[1 * 4 * 4 * 1] = {0}; | |||||
TransArgs args{ | |||||
reinterpret_cast<uint8_t *>(data), FORMAT_NHWC, FORMAT_FRACTAL_Z, {1, 4, 4}, {1, 1, 1, 16, 16}, DT_FLOAT16}; | |||||
FormatTransferNchwNc1hwc0 transfer; | |||||
EXPECT_EQ(transfer.TransShape(args.src_format, args.src_shape, args.src_data_type, args.dst_format, args.dst_shape), | |||||
ACL_ERROR_GE_TRANSSHAPE_FORMAT_INVALID); | |||||
} | |||||
} // namespace formats | } // namespace formats | ||||
} // namespace ge | } // namespace ge |
@@ -751,5 +751,20 @@ TEST_F(UtestFormatTransferNhwc5d, unsupport_dst_format) { | |||||
FormatTransferNhwcNc1hwc0 transfer; | FormatTransferNhwcNc1hwc0 transfer; | ||||
EXPECT_EQ(transfer.TransFormat(args, result), PARAM_INVALID); | EXPECT_EQ(transfer.TransFormat(args, result), PARAM_INVALID); | ||||
} | } | ||||
TEST_F(UtestFormatTransferNhwc5d, invalid_data_shape) { | |||||
uint16_t data[1 * 4 * 4 * 1] = {0}; | |||||
TransArgs args{ | |||||
reinterpret_cast<uint8_t *>(data), FORMAT_NHWC, FORMAT_FRACTAL_Z, {1, 4, 4}, {1, 1, 1, 16, 16}, DT_FLOAT16}; | |||||
FormatTransferNhwcNc1hwc0 transfer; | |||||
EXPECT_EQ(transfer.TransShape(args.src_format, args.src_shape, args.src_data_type, args.dst_format, args.dst_shape), | |||||
ACL_ERROR_GE_TRANSSHAPE_SHAPE_INVALID); | |||||
TransArgs args2{ | |||||
reinterpret_cast<uint8_t *>(data), FORMAT_NHWC, FORMAT_FRACTAL_Z, {1, 4, 4}, {1, 1, 1, 16, 16}, DT_STRING}; | |||||
FormatTransferNhwcNc1hwc0 transfer2; | |||||
EXPECT_EQ(transfer2.TransShape(args2.src_format, args2.src_shape, args2.src_data_type, args2.dst_format, args2.dst_shape), | |||||
ACL_ERROR_GE_TRANSSHAPE_DATATYPE_INVALID); | |||||
} | |||||
} // namespace formats | } // namespace formats | ||||
} // namespace ge | } // namespace ge |
@@ -5353,5 +5353,44 @@ TEST_F(UtestFormatTransferNhwcFz, build_transfer_uint8) { | |||||
auto transfer = BuildFormatTransfer(args); | auto transfer = BuildFormatTransfer(args); | ||||
EXPECT_NE(transfer, nullptr); | EXPECT_NE(transfer, nullptr); | ||||
} | } | ||||
TEST_F(UtestFormatTransferNhwcFz, invalid_data_type) { | |||||
uint16_t data[1 * 4 * 4 * 1] = {0}; | |||||
TransArgs args{ | |||||
reinterpret_cast<uint8_t *>(data), FORMAT_NHWC, FORMAT_FRACTAL_NZ, {1, 4, 4}, {1, 1, 1, 16, 16}, DT_VARIANT}; | |||||
FormatTransferFractalZ transfer; | |||||
EXPECT_EQ(transfer.TransShape(args.src_format, args.src_shape, args.src_data_type, args.dst_format, args.dst_shape), | |||||
ACL_ERROR_GE_TRANSSHAPE_DATATYPE_INVALID); | |||||
} | |||||
TEST_F(UtestFormatTransferNhwcFz, invalid_data_format) { | |||||
uint16_t data[1 * 4 * 4 * 1] = {0}; | |||||
TransArgs args{ | |||||
reinterpret_cast<uint8_t *>(data), FORMAT_CHWN, FORMAT_FRACTAL_NZ, {1, 4, 4}, {1, 1, 1, 16, 16}, DT_FLOAT16}; | |||||
FormatTransferFractalZ transfer; | |||||
EXPECT_EQ(transfer.TransShape(args.src_format, args.src_shape, args.src_data_type, args.dst_format, args.dst_shape), | |||||
ACL_ERROR_GE_TRANSSHAPE_FORMAT_INVALID); | |||||
} | |||||
TEST_F(UtestFormatTransferNhwcFz, invalid_data_shape) { | |||||
uint16_t data[1 * 4 * 4 * 1] = {0}; | |||||
TransArgs args{ | |||||
reinterpret_cast<uint8_t *>(data), FORMAT_NHWC, FORMAT_FRACTAL_Z, {1, 4, 4}, {1, 1, 1, 16, 16}, DT_FLOAT16}; | |||||
FormatTransferFractalZ transfer; | |||||
EXPECT_EQ(transfer.TransShape(args.src_format, args.src_shape, args.src_data_type, args.dst_format, args.dst_shape), | |||||
ACL_ERROR_GE_TRANSSHAPE_SHAPE_INVALID); | |||||
TransArgs args2{ | |||||
reinterpret_cast<uint8_t *>(data), FORMAT_HWCN, FORMAT_FRACTAL_Z, {1, 4, 4}, {1, 1, 1, 16, 16}, DT_FLOAT16}; | |||||
FormatTransferFractalZ transfer2; | |||||
EXPECT_EQ(transfer2.TransShape(args2.src_format, args2.src_shape, args2.src_data_type, args2.dst_format, args2.dst_shape), | |||||
ACL_ERROR_GE_TRANSSHAPE_SHAPE_INVALID); | |||||
TransArgs args3{ | |||||
reinterpret_cast<uint8_t *>(data), FORMAT_NCHW, FORMAT_FRACTAL_Z, {1, 4, 4}, {1, 1, 1, 16, 16}, DT_FLOAT16}; | |||||
FormatTransferFractalZ transfer3; | |||||
EXPECT_EQ(transfer3.TransShape(args3.src_format, args3.src_shape, args3.src_data_type, args3.dst_format, args3.dst_shape), | |||||
ACL_ERROR_GE_TRANSSHAPE_SHAPE_INVALID); | |||||
} | |||||
} // namespace formats | } // namespace formats | ||||
} // namespace ge | } // namespace ge |
@@ -4654,5 +4654,27 @@ TEST_F(UtestFormatTranspose, chwn_to_hwcn2) { | |||||
EXPECT_EQ((reinterpret_cast<uint16_t *>(result.data.get()))[i], ret[i]); | EXPECT_EQ((reinterpret_cast<uint16_t *>(result.data.get()))[i], ret[i]); | ||||
} | } | ||||
} | } | ||||
TEST_F(UtestFormatTranspose, invalid_data_shape) { | |||||
FormatTransferTranspose transfer; | |||||
std::vector<int64_t> dst_shape; | |||||
EXPECT_EQ(transfer.TransShape(FORMAT_NCHW, std::vector<int64_t>({}), DT_FLOAT16, FORMAT_HWCN, dst_shape), | |||||
ACL_ERROR_GE_TRANSSHAPE_SHAPE_INVALID); | |||||
} | |||||
TEST_F(UtestFormatTranspose, invalid_src_format) { | |||||
FormatTransferTranspose transfer; | |||||
std::vector<int64_t> dst_shape; | |||||
EXPECT_EQ(transfer.TransShape(FORMAT_NC1HWC0, std::vector<int64_t>({1, 3, 8, 8}), DT_FLOAT16, FORMAT_HWCN, dst_shape), | |||||
ACL_ERROR_GE_TRANSSHAPE_FORMAT_INVALID); | |||||
} | |||||
TEST_F(UtestFormatTranspose, invalid_dst_format) { | |||||
FormatTransferTranspose transfer; | |||||
std::vector<int64_t> dst_shape; | |||||
std::vector<int64_t> src_shape; | |||||
EXPECT_EQ(transfer.TransShape(FORMAT_NCHW, src_shape, DT_FLOAT16, FORMAT_C1HWNC0, dst_shape), | |||||
ACL_ERROR_GE_TRANSSHAPE_FORMAT_INVALID); | |||||
} | |||||
} // namespace formats | } // namespace formats | ||||
} // namespace ge | } // namespace ge |