diff --git a/ge/common/formats/format_transfers/format_transfer_fractal_z.cc b/ge/common/formats/format_transfers/format_transfer_fractal_z.cc index ec74b473..091fe475 100644 --- a/ge/common/formats/format_transfers/format_transfer_fractal_z.cc +++ b/ge/common/formats/format_transfers/format_transfer_fractal_z.cc @@ -338,10 +338,13 @@ Status TransFormatHwcnToFzWithGroups(const TransArgs &args, TransResult &result, } } result.data = dst; - for (int i = 0; i < 256; ++i) { - std::cout<<(reinterpret_cast(result.data.get()))[i]<(size_output_data); + for (int i = 0; i < result.length / 2; ++i) { + if((i+1)%16 == 0){ + std::cout<(result.data.get()))[i]<<" "; + } return SUCCESS; } Status TransFormatHwcnToFz(const TransArgs &args, TransResult &result) { diff --git a/tests/ut/ge/common/format_transfer_hwcn_fractalz_unittest.cc b/tests/ut/ge/common/format_transfer_hwcn_fractalz_unittest.cc index 2c476234..e4d27073 100644 --- a/tests/ut/ge/common/format_transfer_hwcn_fractalz_unittest.cc +++ b/tests/ut/ge/common/format_transfer_hwcn_fractalz_unittest.cc @@ -34461,6 +34461,205 @@ TEST_F(UtestFormatTransferHwcnFz, fp16_1c_1n_with_groups) { } } +TEST_F(UtestFormatTransferHwcnFz, fp16_1c_1n_with_groups) { +uint16_t data[3 * 3 * 4 * 8] = { +-11 , 99 ,-68 , 2 , -14 ,-59 , -24 ,-100, + 4 , 65 ,-11 , -7 , -74 ,-28 , 71 , -81, +-94 , 63 , 80 , -7 , 95 , 29 , -92 , 76, + 88 ,-68 , 67 , -98 , -82 , 11 , -20 , -68, + 36 , 17 , 15 , 89 , 31 , -8 , -51 , -49, +-49 , 89 , 79 , -97 , -7 ,-91 , 14 , -34, + 55 ,-40 , 85 , -59 , 31 , 35 , -41 , 89, + -4 ,-82 ,-90 , -48 , -44 ,-19 , -9 , 84, +100 , 43 , -7 , 94 , -4 , 91 , 67 , 16, +-63 , 79 ,-20 , 62 , -55 ,-38 , 13 , 61, + 98 , 99 ,-44 , 0 , 97 , 42 , -65 , -80, + 78 , 56 ,-26 , -17 , -23 , 22 , 76 , -84, + 34 , 88 ,-38 , -57 , -37 , 77 , 46 , 28, + 48 ,-11 , 6 , 18 , 8 ,-66 , -24 , 29, + -7 , 72 ,-34 , -79 , -99 ,-14 , -75 , 62, +-44 ,-98 ,-11 , 31 , -4 , 79 , -51 , -37, +-84 , -3 , 89 , -74 , 68 ,-85 , -17 , 93, + 81 ,-88 ,-38 , 8 , 69 , 82 , -91 , -91, +-45 , 42 , 7 , -96 , -81 , 96 , 39 , -35, +-93 ,-46 ,-73 , -7 , 9 , 81 , -5 , -63, +-35 ,-30 , 27 , -42 , 20 ,-52 , 36 , -91, +-87 , 1 , 8 , 7 , -78 , 21 , -76 , 97, + 52 ,-18 ,-55 , 57 , 95 , 67 , 3 , 69, +-98 , 85 ,-75 , 75 , -38 , -3 , -94 , 66, + 92 , 27 , -9 , 39 , 5 , 21 , -4 , 48, +-55 , 38 , 58 , -84 , -23 ,-13 , -71 , -91, + 99 , 58 ,-58 , -16 , 86 , 45 , -63 , -97, +-30 ,-10 ,-21 , -37 , 78 ,-94 , -8 , -49, +-18 ,-52 ,-67 , 65 , 78 ,-82 , -74 , -35, +-97 ,-15 , 43 , -22 , -30 ,-87 , 98 , 91, +-22 ,-88 , 83 , -63 , 79 , 63 , 42 , -74, +-29 ,-62 , 2 , -97 , -65 ,-45 , -76 , -57, +-71 , 65 , 0 , 69 , -76 , 41 , 58 , 98, + 90 , -3 , 75 , -56 , -41 ,-66 , -41 , 96, +-44 , 87 , 61 , -26 , -62 , 57 , -49 , -29, +-49 , 94 ,-90 , 96 , 33 , 32 , 10 , 25}; + uint16_t ret[1 * 1 * 16 * 16] ={ + -11 , 4 ,-94 , 88 , 0 , 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 99 , 65 , 63 ,-68 , 0 , 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + -68 , -11 , 80 , 67 , 0 , 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 2 , -7 , -7 ,-98 , 0 , 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0 , 0 , 0 , 0 ,-14 , -74, 95, -82, 0, 0, 0, 0, 0, 0, 0, 0, + 0 , 0 , 0 , 0 ,-59 , -28, 29, 11, 0, 0, 0, 0, 0, 0, 0, 0, + 0 , 0 , 0 , 0 ,-24 , 71, -92, -20, 0, 0, 0, 0, 0, 0, 0, 0, + 0 , 0 , 0 , 0 ,100 , -81, 76, -68, 0, 0, 0, 0, 0, 0, 0, 0, + 0 , 0 , 0 , 0 , 0 , 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0 , 0 , 0 , 0 , 0 , 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0 , 0 , 0 , 0 , 0 , 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0 , 0 , 0 , 0 , 0 , 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0 , 0 , 0 , 0 , 0 , 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0 , 0 , 0 , 0 , 0 , 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0 , 0 , 0 , 0 , 0 , 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0 , 0 , 0 , 0 , 0 , 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, , + 36 , -49 , 55 , -4 , 0 , 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 17 , 89 ,-40 ,-82 , 0 , 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 15 , 79 , 85 ,-90 , 0 , 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 89 , -97 ,-59 ,-48 , 0 , 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0 , 0 , 0 , 0 , 31 , -7, 31, -44, 0, 0, 0, 0, 0, 0, 0, 0, + 0 , 0 , 0 , 0 , -8 , -91, 35, -19, 0, 0, 0, 0, 0, 0, 0, 0, + 0 , 0 , 0 , 0 ,-51 , 14, -41, -9, 0, 0, 0, 0, 0, 0, 0, 0, + 0 , 0 , 0 , 0 ,-49 , -34, 89, 84, 0, 0, 0, 0, 0, 0, 0, 0, + 0 , 0 , 0 , 0 , 0 , 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0 , 0 , 0 , 0 , 0 , 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0 , 0 , 0 , 0 , 0 , 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0 , 0 , 0 , 0 , 0 , 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0 , 0 , 0 , 0 , 0 , 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0 , 0 , 0 , 0 , 0 , 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0 , 0 , 0 , 0 , 0 , 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0 , 0 , 0 , 0 , 0 , 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, , +-100 , -63 , 98 , 78 , 0 , 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 43 , 79 , 99 , 56 , 0 , 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + -7 , -20 ,-44 ,-26 , 0 , 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 94 , 62 , 0 ,-17 , 0 , 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0 , 0 , 0 , 0 , -4 , -55, 97, -23, 0, 0, 0, 0, 0, 0, 0, 0, + 0 , 0 , 0 , 0 , 91 , -38, 42, 22, 0, 0, 0, 0, 0, 0, 0, 0, + 0 , 0 , 0 , 0 , 67 , 13, -65, 76, 0, 0, 0, 0, 0, 0, 0, 0, + 0 , 0 , 0 , 0 , 16 , 61, -80, -84, 0, 0, 0, 0, 0, 0, 0, 0, + 0 , 0 , 0 , 0 , 0 , 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0 , 0 , 0 , 0 , 0 , 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0 , 0 , 0 , 0 , 0 , 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0 , 0 , 0 , 0 , 0 , 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0 , 0 , 0 , 0 , 0 , 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0 , 0 , 0 , 0 , 0 , 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0 , 0 , 0 , 0 , 0 , 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0 , 0 , 0 , 0 , 0 , 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, , , + 34 , 48 , -7 ,-44 , 0 , 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 88 , -11 , 72 ,-98 , 0 , 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + -38 , 6 ,-34 ,-11 , 0 , 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + -57 , 18 ,-79 , 31 , 0 , 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0 , 0 , 0 , 0 ,-37 , 8, -99, -4, 0, 0, 0, 0, 0, 0, 0, 0, + 0 , 0 , 0 , 0 , 77 , -66, -14, 79, 0, 0, 0, 0, 0, 0, 0, 0, + 0 , 0 , 0 , 0 , 46 , -24, -75, -51, 0, 0, 0, 0, 0, 0, 0, 0, + 0 , 0 , 0 , 0 , 28 , 29, 62, -37, 0, 0, 0, 0, 0, 0, 0, 0, + 0 , 0 , 0 , 0 , 0 , 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0 , 0 , 0 , 0 , 0 , 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0 , 0 , 0 , 0 , 0 , 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0 , 0 , 0 , 0 , 0 , 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0 , 0 , 0 , 0 , 0 , 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0 , 0 , 0 , 0 , 0 , 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0 , 0 , 0 , 0 , 0 , 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0 , 0 , 0 , 0 , 0 , 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, , + -84 , 81 ,-45 ,-93 , 0 , 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + -3 , -88 , 42 ,-46 , 0 , 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 89 , -38 , 7 ,-73 , 0 , 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + -74 , 8 ,-96 , -7 , 0 , 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0 , 0 , 0 , 0 , 68 , 69, -81, 9, 0, 0, 0, 0, 0, 0, 0, 0, + 0 , 0 , 0 , 0 ,-85 , 82, 96, 81, 0, 0, 0, 0, 0, 0, 0, 0, + 0 , 0 , 0 , 0 ,-17 , -91, 39, -5, 0, 0, 0, 0, 0, 0, 0, 0, + 0 , 0 , 0 , 0 , 93 , -91, -35, -63, 0, 0, 0, 0, 0, 0, 0, 0, + 0 , 0 , 0 , 0 , 0 , 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0 , 0 , 0 , 0 , 0 , 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0 , 0 , 0 , 0 , 0 , 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0 , 0 , 0 , 0 , 0 , 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0 , 0 , 0 , 0 , 0 , 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0 , 0 , 0 , 0 , 0 , 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0 , 0 , 0 , 0 , 0 , 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0 , 0 , 0 , 0 , 0 , 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, , + -35 , -87 , 52 ,-98 , 0 , 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + -30 , 1 ,-18 , 85 , 0 , 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 27 , 8 ,-55 ,-75 , 0 , 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + -42 , 7 , 57 , 75 , 0 , 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0 , 0 , 0 , 0 , 20 , -78, 95, -38, 0, 0, 0, 0, 0, 0, 0, 0, + 0 , 0 , 0 , 0 ,-52 , 21, 67, -3, 0, 0, 0, 0, 0, 0, 0, 0, + 0 , 0 , 0 , 0 , 36 , -76, 3, -94, 0, 0, 0, 0, 0, 0, 0, 0, + 0 , 0 , 0 , 0 ,-91 , 97, 69, 66, 0, 0, 0, 0, 0, 0, 0, 0, + 0 , 0 , 0 , 0 , 0 , 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0 , 0 , 0 , 0 , 0 , 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0 , 0 , 0 , 0 , 0 , 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0 , 0 , 0 , 0 , 0 , 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0 , 0 , 0 , 0 , 0 , 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0 , 0 , 0 , 0 , 0 , 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0 , 0 , 0 , 0 , 0 , 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0 , 0 , 0 , 0 , 0 , 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, , , + 92 , -55 , 99 ,-30 , 0 , 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 27 , 38 , 58 ,-10 , 0 , 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + -9 , 58 ,-58 ,-21 , 0 , 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 39 , -84 ,-16 ,-37 , 0 , 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0 , 0 , 0 , 0 , 5 , -23, 86, 78, 0, 0, 0, 0, 0, 0, 0, 0, + 0 , 0 , 0 , 0 , 21 , -13, 45, -94, 0, 0, 0, 0, 0, 0, 0, 0, + 0 , 0 , 0 , 0 , -4 , -71, -63, -8, 0, 0, 0, 0, 0, 0, 0, 0, + 0 , 0 , 0 , 0 , 48 , -91, -97, -49, 0, 0, 0, 0, 0, 0, 0, 0, + 0 , 0 , 0 , 0 , 0 , 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0 , 0 , 0 , 0 , 0 , 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0 , 0 , 0 , 0 , 0 , 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0 , 0 , 0 , 0 , 0 , 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0 , 0 , 0 , 0 , 0 , 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0 , 0 , 0 , 0 , 0 , 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0 , 0 , 0 , 0 , 0 , 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0 , 0 , 0 , 0 , 0 , 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, , + -18 , -97 ,-22 ,-29 , 0 , 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + -52 , -15 ,-88 ,-62 , 0 , 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + -67 , 43 , 83 , 2 , 0 , 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 65 , -22 ,-63 ,-97 , 0 , 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0 , 0 , 0 , 0 , 78 , -30, 79, -65, 0, 0, 0, 0, 0, 0, 0, 0, + 0 , 0 , 0 , 0 ,-82 , -87, 63, -45, 0, 0, 0, 0, 0, 0, 0, 0, + 0 , 0 , 0 , 0 ,-74 , 98, 42, -76, 0, 0, 0, 0, 0, 0, 0, 0, + 0 , 0 , 0 , 0 ,-35 , 91, -74, -57, 0, 0, 0, 0, 0, 0, 0, 0, + 0 , 0 , 0 , 0 , 0 , 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0 , 0 , 0 , 0 , 0 , 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0 , 0 , 0 , 0 , 0 , 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0 , 0 , 0 , 0 , 0 , 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0 , 0 , 0 , 0 , 0 , 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0 , 0 , 0 , 0 , 0 , 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0 , 0 , 0 , 0 , 0 , 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0 , 0 , 0 , 0 , 0 , 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, , + -71 , 90 ,-44 ,-49 , 0 , 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 65 , -3 , 87 , 94 , 0 , 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0 , 75 , 61 ,-90 , 0 , 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 69 , -56 ,-26 , 96 , 0 , 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0 , 0 , 0 , 0 ,-76 , -41, -62, 33, 0, 0, 0, 0, 0, 0, 0, 0, + 0 , 0 , 0 , 0 , 41 , -66, 57, 32, 0, 0, 0, 0, 0, 0, 0, 0, + 0 , 0 , 0 , 0 , 58 , -41, -49, 10, 0, 0, 0, 0, 0, 0, 0, 0, + 0 , 0 , 0 , 0 , 98 , 96, -29, 25, 0, 0, 0, 0, 0, 0, 0, 0, + 0 , 0 , 0 , 0 , 0 , 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0 , 0 , 0 , 0 , 0 , 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0 , 0 , 0 , 0 , 0 , 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0 , 0 , 0 , 0 , 0 , 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0 , 0 , 0 , 0 , 0 , 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0 , 0 , 0 , 0 , 0 , 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0 , 0 , 0 , 0 , 0 , 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0 , 0 , 0 , 0 , 0 , 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; + FormatTransferFractalZ transfer; + ge::Format old_format = FORMAT_FRACTAL_Z; + int32_t groups = 2; + ge::Format new_format = static_cast(ge::GetFormatFromSub(old_format, groups)); + TransArgs args{ + reinterpret_cast(data), FORMAT_HWCN, new_format, std::vector({3, 3, 4, 8}), + std::vector({9, 1, 16, 16}), DT_FLOAT16}; + + TransResult result; + EXPECT_EQ(transfer.TransFormat(args, result), SUCCESS); + EXPECT_EQ(result.length, sizeof(ret) / sizeof(ret[0]) * 2); + for (int i = 0; i < sizeof(ret) / sizeof(ret[0]); ++i) { + EXPECT_EQ((reinterpret_cast(result.data.get()))[i], ret[i]); + } +} + TEST_F(UtestFormatTransferHwcnFz, build_transfer_fp32) { float data[5 * 5 * 31 * 17]; TransArgs args{