From 9dc558f3466353af1f1797fc369270040f39cd47 Mon Sep 17 00:00:00 2001 From: Gian Marco Iodice Date: Tue, 10 Nov 2020 14:29:13 +0000 Subject: Review all shapes in datasets to account for padding removal Part 1 * Add the following configurations for stressing padding removal: * size = 1 * size = multiple of processing size * size = non-multiple of processing size Partially resolves COMPMID-3865 Change-Id: I15361daf3def960c9e3f7d8aaa6682bebd5d7e5f Signed-off-by: Gian Marco Iodice Reviewed-on: https://eu-gerrit-1.euhpc.arm.com/c/VisualCompute/ComputeLibrary/+/275764 Tested-by: bsgcomp Reviewed-by: Manuel Bottini Comments-Addressed: bsgcomp Reviewed-on: https://review.mlplatform.org/c/ml/ComputeLibrary/+/4365 Tested-by: Arm Jenkins Reviewed-by: Michele Di Giorgio Comments-Addressed: Arm Jenkins --- tests/datasets/ShapeDatasets.h | 26 +++++++++++++++++++++++--- tests/datasets/SmallGEMMLowpDataset.h | 16 +++++++--------- 2 files changed, 30 insertions(+), 12 deletions(-) (limited to 'tests/datasets') diff --git a/tests/datasets/ShapeDatasets.h b/tests/datasets/ShapeDatasets.h index f3ef2c2985..df82708ad0 100644 --- a/tests/datasets/ShapeDatasets.h +++ b/tests/datasets/ShapeDatasets.h @@ -135,7 +135,7 @@ public: Tiny4DShapes() : ShapeDataset("Shape", { - TensorShape{ 7U, 7U, 5U, 3U }, + TensorShape{ 2U, 7U, 5U, 3U }, TensorShape{ 17U, 13U, 7U, 2U }, }) { @@ -171,6 +171,26 @@ public: { } }; +/** Data set containing small tensor shapes with none of the dimensions equal to 1 (unit). */ +class SmallNoneUnitShapes final : public ShapeDataset +{ +public: + SmallNoneUnitShapes() + : ShapeDataset("Shape", + { + // Batch size 1 + TensorShape{ 13U, 11U }, + TensorShape{ 16U, 16U }, + TensorShape{ 24U, 26U, 5U }, + TensorShape{ 7U, 7U, 17U, 2U }, + // Batch size 4 + TensorShape{ 27U, 13U, 2U, 4U }, + // Arbitrary batch size + TensorShape{ 8U, 7U, 5U, 5U } + }) + { + } +}; /** Data set containing small tensor shapes. */ class SmallShapes final : public ShapeDataset { @@ -179,8 +199,8 @@ public: : ShapeDataset("Shape", { // Batch size 1 - TensorShape{ 11U, 11U }, - TensorShape{ 16U, 16U }, + TensorShape{ 3U, 11U }, + TensorShape{ 1U, 16U }, TensorShape{ 27U, 13U, 7U }, TensorShape{ 7U, 7U, 17U, 2U }, // Batch size 4 diff --git a/tests/datasets/SmallGEMMLowpDataset.h b/tests/datasets/SmallGEMMLowpDataset.h index 1b6c65307b..b8529ac165 100644 --- a/tests/datasets/SmallGEMMLowpDataset.h +++ b/tests/datasets/SmallGEMMLowpDataset.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2017-2020 Arm Limited. + * Copyright (c) 2017-2021 Arm Limited. * * SPDX-License-Identifier: MIT * @@ -58,11 +58,10 @@ public: SmallGEMMLowpOutput3DDataset() { add_config(TensorShape(21U, 14U), TensorShape(34U, 21U), TensorShape(34U, 7U, 2U), 0, 0); - add_config(TensorShape(31U, 1U), TensorShape(23U, 31U), TensorShape(23U, 1U, 1U), -2, 13); - add_config(TensorShape(38U, 12U), TensorShape(21U, 38U), TensorShape(21U, 4U, 3U), 0, 4); - add_config(TensorShape(32U, 1U), TensorShape(17U, 32U), TensorShape(17U, 1U, 1U), -2, 1); - add_config(TensorShape(16U, 16U), TensorShape(8U, 16U), TensorShape(8U, 8U, 2U), 5, 9); - add_config(TensorShape(16U, 16U, 5U), TensorShape(8U, 16U, 5U), TensorShape(8U, 8U, 2U, 5U), -7, 2); + add_config(TensorShape(31U, 1U), TensorShape(3U, 31U), TensorShape(3U, 1U, 1U), -2, 13); + add_config(TensorShape(38U, 12U), TensorShape(1U, 38U), TensorShape(1U, 4U, 3U), 0, 4); + add_config(TensorShape(16U, 16U), TensorShape(11U, 16U), TensorShape(11U, 8U, 2U), 2, -1); + add_config(TensorShape(16U, 16U, 5U), TensorShape(13U, 16U, 5U), TensorShape(13U, 8U, 2U, 5U), -3, 2); } }; class SmallGEMMLowpInputOutput3DDataset final : public GEMMLowpDataset @@ -71,10 +70,9 @@ public: SmallGEMMLowpInputOutput3DDataset() { add_config(TensorShape(21U, 14U, 13U), TensorShape(34U, 21U), TensorShape(34U, 14U, 13U), 0, 0); - add_config(TensorShape(31U, 1U, 3U), TensorShape(23U, 31U), TensorShape(23U, 1U, 3U), 0, 0); + add_config(TensorShape(31U, 1U, 3U), TensorShape(1U, 31U), TensorShape(1U, 1U, 3U), 0, 0); add_config(TensorShape(38U, 12U, 2U), TensorShape(21U, 38U), TensorShape(21U, 12U, 2U), -2, 13); - add_config(TensorShape(32U, 1U, 4U, 3U), TensorShape(17U, 32U), TensorShape(17U, 1U, 4U, 3U), 0, 4); - add_config(TensorShape(16U, 16U, 3U, 2U), TensorShape(8U, 16U), TensorShape(8U, 16U, 3U, 2U), -2, 0); + add_config(TensorShape(16U, 16U, 3U, 2U), TensorShape(15U, 16U), TensorShape(15U, 16U, 3U, 2U), -2, 0); add_config(TensorShape(16U, 16U, 5U, 3U), TensorShape(8U, 16U), TensorShape(8U, 16U, 5U, 3U), -9, 1); } }; -- cgit v1.2.1