From 5945070e4d73962f6d1e0b9eff2ab7488ee5c787 Mon Sep 17 00:00:00 2001 From: Gunes Bayir Date: Mon, 12 Dec 2022 09:29:06 +0000 Subject: Redistribute CL/Deconvolution QSYMM8_PER_CHANNEL tests This patch significantly reduces the pressure of CL Deconvolution tests for QSYMM8_PER_CHANNEL on the precommit and migrates some of them to nightly, while adding smaller tests for precommit. Signed-off-by: Gunes Bayir Change-Id: I3ba16cb3ebc11b5f6015f97423b0496ee2449cc7 Reviewed-on: https://review.mlplatform.org/c/ml/ComputeLibrary/+/8782 Benchmark: Arm Jenkins Reviewed-by: Pablo Marquez Tello Reviewed-by: Jakub Sujak Comments-Addressed: Arm Jenkins Tested-by: Arm Jenkins --- tests/validation/CL/DeconvolutionLayer.cpp | 44 ++++++++++++++++++++++++------ 1 file changed, 35 insertions(+), 9 deletions(-) (limited to 'tests/validation/CL/DeconvolutionLayer.cpp') diff --git a/tests/validation/CL/DeconvolutionLayer.cpp b/tests/validation/CL/DeconvolutionLayer.cpp index 01d0dd8caa..a04f273b60 100644 --- a/tests/validation/CL/DeconvolutionLayer.cpp +++ b/tests/validation/CL/DeconvolutionLayer.cpp @@ -71,7 +71,8 @@ const auto data3x3_precommit = datasets::SmallDeconvolutionShapes() * framework: * framework::dataset::make("PadY", 0, 2) * framework::dataset::make("NumKernels", { 3 }); const auto data3x3_precommit_large_channels = datasets::SmallDeconvolutionShapesWithLargerChannels() * framework::dataset::make("StrideX", 2) * framework::dataset::make("StrideY", - 2) * framework::dataset::make("PadX", 1) + 2) + * framework::dataset::make("PadX", 1) * framework::dataset::make("PadY", 2) * framework::dataset::make("NumKernels", { 5 }); const auto data2x2_precommit = datasets::SmallDeconvolutionShapes() * framework::dataset::make("StrideX", 2) * framework::dataset::make("StrideY", 2) * framework::dataset::make("PadX", 1) @@ -494,7 +495,7 @@ const auto output_signed_qinfo_dataset = framework::dataset::make("OutputQuantiz TEST_SUITE(QSYMM8_PER_CHANNEL) TEST_SUITE(W4x4) -FIXTURE_DATA_TEST_CASE(RunSmall, CLDeconvolutionLayerQuantizedPerChannelFixture4x4, framework::DatasetMode::ALL, combine(combine(combine(combine(combine(combine(data4x4, +FIXTURE_DATA_TEST_CASE(RunSmall, CLDeconvolutionLayerQuantizedPerChannelFixture4x4, framework::DatasetMode::NIGHTLY, combine(combine(combine(combine(combine(combine(data4x4, framework::dataset::make("DataType", DataType::QASYMM8)), data_layouts_dataset), input_qinfo_dataset), @@ -505,7 +506,7 @@ FIXTURE_DATA_TEST_CASE(RunSmall, CLDeconvolutionLayerQuantizedPerChannelFixture4 // Validate output validate(CLAccessor(_target), _reference, tolerance_qasymm8, tolerance_num); } -FIXTURE_DATA_TEST_CASE(RunSmallSigned, CLDeconvolutionLayerQuantizedPerChannelFixture4x4, framework::DatasetMode::ALL, combine(combine(combine(combine(combine(combine(data4x4, +FIXTURE_DATA_TEST_CASE(RunSmallSigned, CLDeconvolutionLayerQuantizedPerChannelFixture4x4, framework::DatasetMode::NIGHTLY, combine(combine(combine(combine(combine(combine(data4x4, framework::dataset::make("DataType", DataType::QASYMM8_SIGNED)), data_layouts_dataset), input_signed_qinfo_dataset), @@ -519,7 +520,7 @@ FIXTURE_DATA_TEST_CASE(RunSmallSigned, CLDeconvolutionLayerQuantizedPerChannelFi TEST_SUITE_END() // W4x4 TEST_SUITE(W3x3) -FIXTURE_DATA_TEST_CASE(RunSmall, CLDeconvolutionLayerQuantizedPerChannelFixture3x3, framework::DatasetMode::ALL, combine(combine(combine(combine(combine(combine(data3x3, +FIXTURE_DATA_TEST_CASE(RunSmall, CLDeconvolutionLayerQuantizedPerChannelFixture3x3, framework::DatasetMode::NIGHTLY, combine(combine(combine(combine(combine(combine(data3x3, framework::dataset::make("DataType", DataType::QASYMM8)), data_layouts_dataset), input_qinfo_dataset), @@ -530,7 +531,7 @@ FIXTURE_DATA_TEST_CASE(RunSmall, CLDeconvolutionLayerQuantizedPerChannelFixture3 // Validate output validate(CLAccessor(_target), _reference, tolerance_qasymm8, tolerance_num); } -FIXTURE_DATA_TEST_CASE(RunSmallSigned, CLDeconvolutionLayerQuantizedPerChannelFixture3x3, framework::DatasetMode::ALL, combine(combine(combine(combine(combine(combine(data3x3, +FIXTURE_DATA_TEST_CASE(RunSmallSigned, CLDeconvolutionLayerQuantizedPerChannelFixture3x3, framework::DatasetMode::NIGHTLY, combine(combine(combine(combine(combine(combine(data3x3, framework::dataset::make("DataType", DataType::QASYMM8_SIGNED)), data_layouts_dataset), input_signed_qinfo_dataset), @@ -541,10 +542,35 @@ FIXTURE_DATA_TEST_CASE(RunSmallSigned, CLDeconvolutionLayerQuantizedPerChannelFi // Validate output validate(CLAccessor(_target), _reference, tolerance_qasymm8, tolerance_num); } + +FIXTURE_DATA_TEST_CASE(RunSmallSignedPrecommit, CLDeconvolutionLayerQuantizedPerChannelFixture2x2, framework::DatasetMode::PRECOMMIT, + combine(combine(combine(combine(combine(combine(data3x3_precommit, + framework::dataset::make("DataType", DataType::QASYMM8_SIGNED)), + data_layouts_dataset), + input_signed_qinfo_dataset), + output_signed_qinfo_dataset), + add_bias_dataset), + framework::dataset::make("WeightsDataType", { DataType::QSYMM8_PER_CHANNEL }))) +{ + // Validate output + validate(CLAccessor(_target), _reference, tolerance_qasymm8, tolerance_num); +} TEST_SUITE_END() // W3x3 +FIXTURE_DATA_TEST_CASE(RunSmall, CLDeconvolutionLayerQuantizedPerChannelFixture2x2, framework::DatasetMode::PRECOMMIT, combine(combine(combine(combine(combine(combine(data3x3_precommit, + framework::dataset::make("DataType", DataType::QASYMM8)), + data_layouts_dataset), + input_qinfo_dataset), + output_qinfo_dataset), + add_bias_dataset), + framework::dataset::make("WeightsDataType", { DataType::QSYMM8_PER_CHANNEL }))) +{ + // Validate output + validate(CLAccessor(_target), _reference, tolerance_qasymm8, tolerance_num); +} + TEST_SUITE(W2x2) -FIXTURE_DATA_TEST_CASE(RunSmall, CLDeconvolutionLayerQuantizedPerChannelFixture2x2, framework::DatasetMode::ALL, combine(combine(combine(combine(combine(combine(data2x2_precommit, +FIXTURE_DATA_TEST_CASE(RunSmall, CLDeconvolutionLayerQuantizedPerChannelFixture2x2, framework::DatasetMode::PRECOMMIT, combine(combine(combine(combine(combine(combine(data2x2_precommit, framework::dataset::make("DataType", DataType::QASYMM8)), data_layouts_dataset), input_qinfo_dataset), @@ -555,7 +581,7 @@ FIXTURE_DATA_TEST_CASE(RunSmall, CLDeconvolutionLayerQuantizedPerChannelFixture2 // Validate output validate(CLAccessor(_target), _reference, tolerance_qasymm8, tolerance_num); } -FIXTURE_DATA_TEST_CASE(RunSmallSigned, CLDeconvolutionLayerQuantizedPerChannelFixture2x2, framework::DatasetMode::ALL, combine(combine(combine(combine(combine(combine(data2x2_precommit, +FIXTURE_DATA_TEST_CASE(RunSmallSigned, CLDeconvolutionLayerQuantizedPerChannelFixture2x2, framework::DatasetMode::PRECOMMIT, combine(combine(combine(combine(combine(combine(data2x2_precommit, framework::dataset::make("DataType", DataType::QASYMM8_SIGNED)), data_layouts_dataset), input_signed_qinfo_dataset), @@ -569,7 +595,7 @@ FIXTURE_DATA_TEST_CASE(RunSmallSigned, CLDeconvolutionLayerQuantizedPerChannelFi TEST_SUITE_END() // W2x2 TEST_SUITE(W1x1) -FIXTURE_DATA_TEST_CASE(RunSmall, CLDeconvolutionLayerQuantizedPerChannelFixture1x1, framework::DatasetMode::ALL, combine(combine(combine(combine(combine(combine(data1x1, +FIXTURE_DATA_TEST_CASE(RunSmall, CLDeconvolutionLayerQuantizedPerChannelFixture1x1, framework::DatasetMode::NIGHTLY, combine(combine(combine(combine(combine(combine(data1x1, framework::dataset::make("DataType", DataType::QASYMM8)), data_layouts_dataset), input_qinfo_dataset), @@ -580,7 +606,7 @@ FIXTURE_DATA_TEST_CASE(RunSmall, CLDeconvolutionLayerQuantizedPerChannelFixture1 // Validate output validate(CLAccessor(_target), _reference, tolerance_qasymm8, tolerance_num); } -FIXTURE_DATA_TEST_CASE(RunSmallSigned, CLDeconvolutionLayerQuantizedPerChannelFixture1x1, framework::DatasetMode::ALL, combine(combine(combine(combine(combine(combine(data1x1, +FIXTURE_DATA_TEST_CASE(RunSmallSigned, CLDeconvolutionLayerQuantizedPerChannelFixture1x1, framework::DatasetMode::NIGHTLY, combine(combine(combine(combine(combine(combine(data1x1, framework::dataset::make("DataType", DataType::QASYMM8_SIGNED)), data_layouts_dataset), input_signed_qinfo_dataset), -- cgit v1.2.1