@@ -594,7 +594,17 @@ INSTANTIATE_TEST_SUITE_P(reduce_gpu_b_fs_yx_fsv16_i8_i8,
594
594
TestParamType_general_reduce_gpu(3 , 3 , 1 , 1 , 3 , 6 , format::b_fs_yx_fsv16, reduce_mode::logical_or, {3 , 2 , 1 , 0 }, " reduce_gpu_b_fs_yx_fsv16" , false , data_types::i8, true , data_types::i8),
595
595
TestParamType_general_reduce_gpu(3 , 5 , 1 , 1 , 3 , 2 , format::b_fs_yx_fsv16, reduce_mode::logical_and, {3 , 2 , 1 , 0 }, " reduce_gpu_b_fs_yx_fsv16" , true , data_types::i8, true , data_types::i8),
596
596
TestParamType_general_reduce_gpu(3 , 7 , 1 , 1 , 3 , 2 , format::b_fs_yx_fsv16, reduce_mode::logical_or, {3 , 2 , 1 , 0 }, " reduce_gpu_b_fs_yx_fsv16" , false , data_types::i8, true , data_types::i8),
597
- TestParamType_general_reduce_gpu(1 , 3 , 1 , 1 , 6 , 12 , format::b_fs_yx_fsv16, reduce_mode::logical_and, {3 , 2 , 1 , 0 }, " reduce_gpu_b_fs_yx_fsv16" , true , data_types::i8, true , data_types::i8)
597
+ TestParamType_general_reduce_gpu(1 , 3 , 1 , 1 , 6 , 12 , format::b_fs_yx_fsv16, reduce_mode::logical_and, {3 , 2 , 1 , 0 }, " reduce_gpu_b_fs_yx_fsv16" , true , data_types::i8, true , data_types::i8),
598
+ TestParamType_general_reduce_gpu(3 , 3 , 1 , 1 , 2 , 11 , format::b_fs_yx_fsv16, reduce_mode::min, {3 , 2 , 1 , 0 }, " reduce_gpu_b_fs_yx_fsv16" , false , data_types::i8, false , data_types::i8),
599
+ TestParamType_general_reduce_gpu(16 , 4 , 1 , 1 , 16 , 8 , format::b_fs_yx_fsv16, reduce_mode::max, {1 , 2 , 3 }, " reduce_gpu_b_fs_yx_fsv16" , false , data_types::i8, false , data_types::i8),
600
+ TestParamType_general_reduce_gpu(16 , 16 , 1 , 1 , 16 , 8 , format::b_fs_yx_fsv16, reduce_mode::min, {2 , 3 }, " reduce_gpu_b_fs_yx_fsv16" , false , data_types::i8, false , data_types::i8),
601
+ TestParamType_general_reduce_gpu(17 , 34 , 1 , 1 , 18 , 11 , format::b_fs_yx_fsv16, reduce_mode::max, {2 , 1 }, " reduce_gpu_b_fs_yx_fsv16" , false , data_types::i8, false , data_types::i8),
602
+ TestParamType_general_reduce_gpu(16 , 16 , 1 , 1 , 17 , 8 , format::b_fs_yx_fsv16, reduce_mode::min, {2 , 0 }, " reduce_gpu_b_fs_yx_fsv16" , false , data_types::i8, false , data_types::i8),
603
+ TestParamType_general_reduce_gpu(16 , 4 , 1 , 1 , 16 , 8 , format::b_fs_yx_fsv16, reduce_mode::max, {1 , 2 , 3 }, " reduce_gpu_b_fs_yx_fsv16" , true , data_types::i8, false , data_types::i8),
604
+ TestParamType_general_reduce_gpu(16 , 16 , 1 , 1 , 16 , 8 , format::b_fs_yx_fsv16, reduce_mode::min, {2 , 3 }, " reduce_gpu_b_fs_yx_fsv16" , true , data_types::i8, false , data_types::i8),
605
+ TestParamType_general_reduce_gpu(2 , 5 , 1 , 1 , 3 , 3 , format::b_fs_yx_fsv16, reduce_mode::max, {3 , 1 }, " reduce_gpu_b_fs_yx_fsv16" , true , data_types::i8, false , data_types::i8),
606
+ TestParamType_general_reduce_gpu(17 , 34 , 1 , 1 , 18 , 11 , format::b_fs_yx_fsv16, reduce_mode::max, {2 , 1 }, " reduce_gpu_b_fs_yx_fsv16" , true , data_types::i8, false , data_types::i8),
607
+ TestParamType_general_reduce_gpu(16 , 16 , 1 , 1 , 17 , 8 , format::b_fs_yx_fsv16, reduce_mode::min, {2 , 0 }, " reduce_gpu_b_fs_yx_fsv16" , true , data_types::i8, false , data_types::i8)
598
608
),
599
609
general_reduce_gpu::PrintToStringParamName);
600
610
@@ -603,33 +613,22 @@ INSTANTIATE_TEST_SUITE_P(reduce_gpu_b_fs_yx_fsv16_i8_i8,
603
613
::testing::Values (
604
614
TestParamType_general_reduce_gpu (3 , 3 , 1 , 1 , 3 , 2 , format::b_fs_yx_fsv16, reduce_mode::sum, {3 , 2 , 1 , 0 }, " reduce_gpu_b_fs_yx_fsv16" , false , data_types::i8, false , data_types::f32),
605
615
TestParamType_general_reduce_gpu(3 , 3 , 1 , 1 , 3 , 3 , format::b_fs_yx_fsv16, reduce_mode::l1, {3 , 2 , 1 , 0 }, " reduce_gpu_b_fs_yx_fsv16" , false , data_types::i8, false , data_types::f32),
606
- TestParamType_general_reduce_gpu(3 , 3 , 1 , 1 , 2 , 11 , format::b_fs_yx_fsv16, reduce_mode::min, {3 , 2 , 1 , 0 }, " reduce_gpu_b_fs_yx_fsv16" , false , data_types::i8, false , data_types::f32),
607
616
TestParamType_general_reduce_gpu(7 , 3 , 1 , 1 , 13 , 11 , format::b_fs_yx_fsv16, reduce_mode::mean, {3 , 2 , 1 , 0 }, " reduce_gpu_b_fs_yx_fsv16" , false , data_types::i8, false , data_types::f32),
608
617
TestParamType_general_reduce_gpu(26 , 12 , 1 , 1 , 16 , 8 , format::b_fs_yx_fsv16, reduce_mode::sum, {3 , 1 , 0 }, " reduce_gpu_b_fs_yx_fsv16" , false , data_types::i8, false , data_types::f32),
609
618
TestParamType_general_reduce_gpu(17 , 12 , 1 , 1 , 13 , 11 , format::b_fs_yx_fsv16, reduce_mode::l1, {2 , 1 , 0 }, " reduce_gpu_b_fs_yx_fsv16" , false , data_types::i8, false , data_types::f32),
610
- TestParamType_general_reduce_gpu(16 , 4 , 1 , 1 , 16 , 8 , format::b_fs_yx_fsv16, reduce_mode::max, {1 , 2 , 3 }, " reduce_gpu_b_fs_yx_fsv16" , false , data_types::i8, false , data_types::f32),
611
619
TestParamType_general_reduce_gpu(17 , 34 , 1 , 1 , 13 , 12 , format::b_fs_yx_fsv16, reduce_mode::l2, {0 , 2 , 3 }, " reduce_gpu_b_fs_yx_fsv16" , false , data_types::i8, false , data_types::f32),
612
- TestParamType_general_reduce_gpu(16 , 16 , 1 , 1 , 16 , 8 , format::b_fs_yx_fsv16, reduce_mode::min, {2 , 3 }, " reduce_gpu_b_fs_yx_fsv16" , false , data_types::i8, false , data_types::f32),
613
620
TestParamType_general_reduce_gpu(1 , 2 , 1 , 1 , 5 , 5 , format::b_fs_yx_fsv16, reduce_mode::prod, {3 , 1 }, " reduce_gpu_b_fs_yx_fsv16" , false , data_types::i8, false , data_types::f32),
614
621
TestParamType_general_reduce_gpu(16 , 26 , 1 , 1 , 16 , 8 , format::b_fs_yx_fsv16, reduce_mode::mean, {3 , 0 }, " reduce_gpu_b_fs_yx_fsv16" , false , data_types::i8, false , data_types::f32),
615
- TestParamType_general_reduce_gpu(17 , 34 , 1 , 1 , 18 , 11 , format::b_fs_yx_fsv16, reduce_mode::max, {2 , 1 }, " reduce_gpu_b_fs_yx_fsv16" , false , data_types::i8, false , data_types::f32),
616
- TestParamType_general_reduce_gpu(16 , 16 , 1 , 1 , 17 , 8 , format::b_fs_yx_fsv16, reduce_mode::min, {2 , 0 }, " reduce_gpu_b_fs_yx_fsv16" , false , data_types::i8, false , data_types::f32),
617
622
TestParamType_general_reduce_gpu(17 , 34 , 1 , 1 , 16 , 11 , format::b_fs_yx_fsv16, reduce_mode::l1, {1 , 0 }, " reduce_gpu_b_fs_yx_fsv16" , false , data_types::i8, false , data_types::f32),
618
623
TestParamType_general_reduce_gpu(16 , 16 , 1 , 1 , 15 , 8 , format::b_fs_yx_fsv16, reduce_mode::log_sum_exp, {0 }, " reduce_gpu_b_fs_yx_fsv16" , false , data_types::i8, false , data_types::f32),
619
624
TestParamType_general_reduce_gpu(17 , 34 , 1 , 1 , 14 , 11 , format::b_fs_yx_fsv16, reduce_mode::l2, {1 }, " reduce_gpu_b_fs_yx_fsv16" , false , data_types::i8, false , data_types::f32),
620
625
TestParamType_general_reduce_gpu(16 , 16 , 1 , 1 , 12 , 8 , format::b_fs_yx_fsv16, reduce_mode::sum_square, {2 }, " reduce_gpu_b_fs_yx_fsv16" , false , data_types::i8, false , data_types::f32),
621
626
TestParamType_general_reduce_gpu(17 , 34 , 1 , 1 , 12 , 11 , format::b_fs_yx_fsv16, reduce_mode::log_sum, {3 }, " reduce_gpu_b_fs_yx_fsv16" , false , data_types::i8, false , data_types::f32),
622
-
623
627
TestParamType_general_reduce_gpu(7 , 3 , 1 , 1 , 13 , 11 , format::b_fs_yx_fsv16, reduce_mode::mean, {3 , 2 , 1 , 0 }, " reduce_gpu_b_fs_yx_fsv16" , true , data_types::i8, false , data_types::f32),
624
628
TestParamType_general_reduce_gpu(26 , 12 , 1 , 1 , 16 , 8 , format::b_fs_yx_fsv16, reduce_mode::sum, {3 , 1 , 0 }, " reduce_gpu_b_fs_yx_fsv16" , true , data_types::i8, false , data_types::f32),
625
629
TestParamType_general_reduce_gpu(17 , 12 , 1 , 1 , 13 , 11 , format::b_fs_yx_fsv16, reduce_mode::l1, {2 , 1 , 0 }, " reduce_gpu_b_fs_yx_fsv16" , true , data_types::i8, false , data_types::f32),
626
- TestParamType_general_reduce_gpu(16 , 4 , 1 , 1 , 16 , 8 , format::b_fs_yx_fsv16, reduce_mode::max, {1 , 2 , 3 }, " reduce_gpu_b_fs_yx_fsv16" , true , data_types::i8, false , data_types::f32),
627
630
TestParamType_general_reduce_gpu(17 , 34 , 1 , 1 , 13 , 9 , format::b_fs_yx_fsv16, reduce_mode::l2, {0 , 2 , 3 }, " reduce_gpu_b_fs_yx_fsv16" , true , data_types::i8, false , data_types::f32),
628
- TestParamType_general_reduce_gpu(16 , 16 , 1 , 1 , 16 , 8 , format::b_fs_yx_fsv16, reduce_mode::min, {2 , 3 }, " reduce_gpu_b_fs_yx_fsv16" , true , data_types::i8, false , data_types::f32),
629
- TestParamType_general_reduce_gpu(2 , 5 , 1 , 1 , 3 , 3 , format::b_fs_yx_fsv16, reduce_mode::max, {3 , 1 }, " reduce_gpu_b_fs_yx_fsv16" , true , data_types::i8, false , data_types::f32),
630
631
TestParamType_general_reduce_gpu(16 , 26 , 1 , 1 , 16 , 8 , format::b_fs_yx_fsv16, reduce_mode::mean, {3 , 0 }, " reduce_gpu_b_fs_yx_fsv16" , true , data_types::i8, false , data_types::f32),
631
- TestParamType_general_reduce_gpu(17 , 34 , 1 , 1 , 18 , 11 , format::b_fs_yx_fsv16, reduce_mode::max, {2 , 1 }, " reduce_gpu_b_fs_yx_fsv16" , true , data_types::i8, false , data_types::f32),
632
- TestParamType_general_reduce_gpu(16 , 16 , 1 , 1 , 17 , 8 , format::b_fs_yx_fsv16, reduce_mode::min, {2 , 0 }, " reduce_gpu_b_fs_yx_fsv16" , true , data_types::i8, false , data_types::f32),
633
632
TestParamType_general_reduce_gpu(17 , 34 , 1 , 1 , 16 , 15 , format::b_fs_yx_fsv16, reduce_mode::l1, {1 , 0 }, " reduce_gpu_b_fs_yx_fsv16" , true , data_types::i8, false , data_types::f32),
634
633
TestParamType_general_reduce_gpu(16 , 16 , 1 , 1 , 15 , 8 , format::b_fs_yx_fsv16, reduce_mode::log_sum_exp, {0 }, " reduce_gpu_b_fs_yx_fsv16" , true , data_types::i8, false , data_types::f32),
635
634
TestParamType_general_reduce_gpu(17 , 3 , 1 , 1 , 14 , 11 , format::b_fs_yx_fsv16, reduce_mode::mean, {1 }, " reduce_gpu_b_fs_yx_fsv16" , true , data_types::i8, false , data_types::f32),
@@ -1831,6 +1830,38 @@ TEST(reduce_gpu, b_fs_yx_fsv16_max_dynamic) {
1831
1830
}
1832
1831
}
1833
1832
1833
+ TEST (reduce_gpu, reduce_min_max_default_output_element_type_should_be_same_to_input_element_type) {
1834
+ auto & engine = get_test_engine ();
1835
+
1836
+ auto input = engine.allocate_memory ({data_types::i8, format::bfyx, {1 , 1 , 2 , 2 }});
1837
+ set_values (input, {1 , 1 , 1 , 1 });
1838
+
1839
+ topology topology1 (
1840
+ input_layout (" input" , input->get_layout ()),
1841
+ reduce (" reduce" , input_info (" input" ), reduce_mode::max, {1 }, 0 ),
1842
+ reorder (" reorder" , input_info (" reduce" ), format::bfyx, data_types::i8)
1843
+ );
1844
+
1845
+ ExecutionConfig config = get_test_default_config (engine);
1846
+ network network1 (engine, topology1, config);
1847
+ network1.set_input_data (" input" , input);
1848
+ auto output = network1.execute ();
1849
+
1850
+ ASSERT_EQ (network1.get_program ()->get_node (" reduce" ).get_output_layout ().data_type , data_types::i8);
1851
+
1852
+ topology topology2 (
1853
+ input_layout (" input" , input->get_layout ()),
1854
+ reduce (" reduce" , input_info (" input" ), reduce_mode::min, {1 }, 0 ),
1855
+ reorder (" reorder" , input_info (" reduce" ), format::bfyx, data_types::i8)
1856
+ );
1857
+
1858
+ network network2 (engine, topology2, config);
1859
+ network2.set_input_data (" input" , input);
1860
+ output = network2.execute ();
1861
+
1862
+ ASSERT_EQ (network2.get_program ()->get_node (" reduce" ).get_output_layout ().data_type , data_types::i8);
1863
+ }
1864
+
1834
1865
template <data_types InputT, data_types OutputT>
1835
1866
class ReduceXYWithBigTensorTestBase : public ::testing::TestWithParam<TestParamType_general_reduce_gpu> {
1836
1867
protected:
@@ -2150,16 +2181,9 @@ INSTANTIATE_TEST_SUITE_P(onednn_reduce_gpu_b_fs_yx_fsv16_i8_f32,
2150
2181
onednn_reduce_gpu_i8_f32,
2151
2182
::testing::Values (
2152
2183
TestParamType_general_reduce_gpu (3 , 3 , 1 , 1 , 3 , 2 , format::b_fs_yx_fsv16, reduce_mode::sum, {3 , 2 , 1 , 0 }, " reduce_gpu_b_fs_yx_fsv16" , false , data_types::i8, false , data_types::f32),
2153
- TestParamType_general_reduce_gpu(3 , 3 , 1 , 1 , 2 , 11 , format::b_fs_yx_fsv16, reduce_mode::min, {3 , 2 , 1 , 0 }, " reduce_gpu_b_fs_yx_fsv16" , false , data_types::i8, false , data_types::f32),
2154
2184
TestParamType_general_reduce_gpu(7 , 3 , 1 , 1 , 13 , 11 , format::b_fs_yx_fsv16, reduce_mode::mean, {3 , 2 , 1 , 0 }, " reduce_gpu_b_fs_yx_fsv16" , false , data_types::i8, false , data_types::f32),
2155
- TestParamType_general_reduce_gpu(16 , 4 , 1 , 1 , 16 , 8 , format::b_fs_yx_fsv16, reduce_mode::max, {1 , 2 , 3 }, " reduce_gpu_b_fs_yx_fsv16" , false , data_types::i8, false , data_types::f32),
2156
- TestParamType_general_reduce_gpu(16 , 16 , 1 , 1 , 16 , 8 , format::b_fs_yx_fsv16, reduce_mode::min, {2 , 3 }, " reduce_gpu_b_fs_yx_fsv16" , false , data_types::i8, false , data_types::f32),
2157
- TestParamType_general_reduce_gpu(17 , 34 , 1 , 1 , 18 , 11 , format::b_fs_yx_fsv16, reduce_mode::max, {2 , 1 }, " reduce_gpu_b_fs_yx_fsv16" , false , data_types::i8, false , data_types::f32),
2158
2185
2159
2186
TestParamType_general_reduce_gpu(7 , 3 , 1 , 1 , 13 , 11 , format::b_fs_yx_fsv16, reduce_mode::mean, {3 , 2 , 1 , 0 }, " reduce_gpu_b_fs_yx_fsv16" , true , data_types::i8, false , data_types::f32),
2160
- TestParamType_general_reduce_gpu(16 , 4 , 1 , 1 , 16 , 8 , format::b_fs_yx_fsv16, reduce_mode::max, {1 , 2 , 3 }, " reduce_gpu_b_fs_yx_fsv16" , true , data_types::i8, false , data_types::f32),
2161
- TestParamType_general_reduce_gpu(16 , 16 , 1 , 1 , 16 , 8 , format::b_fs_yx_fsv16, reduce_mode::min, {2 , 3 }, " reduce_gpu_b_fs_yx_fsv16" , true , data_types::i8, false , data_types::f32),
2162
- TestParamType_general_reduce_gpu(16 , 16 , 1 , 1 , 17 , 8 , format::b_fs_yx_fsv16, reduce_mode::min, {2 , 0 }, " reduce_gpu_b_fs_yx_fsv16" , true , data_types::i8, false , data_types::f32),
2163
2187
TestParamType_general_reduce_gpu(17 , 3 , 1 , 1 , 14 , 11 , format::b_fs_yx_fsv16, reduce_mode::mean, {1 }, " reduce_gpu_b_fs_yx_fsv16" , true , data_types::i8, false , data_types::f32)
2164
2188
), general_reduce_gpu::PrintToStringParamName);
2165
2189
0 commit comments