diff options
author | Sheri Zhang <sheri.zhang@arm.com> | 2020-10-08 12:35:28 +0100 |
---|---|---|
committer | Sheri Zhang <sheri.zhang@arm.com> | 2020-10-13 10:12:07 +0000 |
commit | 141c31a532efb20698466aaabbecc92639f05b0d (patch) | |
tree | 1ed97d68e8142c3b6ac4a8a9bab9fda8ab85fa9d /tests/validation/CL | |
parent | 6a9e801743b85706177b01e1ffb31320222c4378 (diff) | |
download | ComputeLibrary-141c31a532efb20698466aaabbecc92639f05b0d.tar.gz |
COMPMID-3705: Remove OpenCL padding: CLBatchNormalizationLayerKernel
Signed-off-by: Sheri Zhang <sheri.zhang@arm.com>
Change-Id: If077a245156be69f34834cbfbd0a36e570ee4149
Reviewed-on: https://review.mlplatform.org/c/ml/ComputeLibrary/+/4107
Tested-by: Arm Jenkins <bsgcomp@arm.com>
Comments-Addressed: Arm Jenkins <bsgcomp@arm.com>
Reviewed-by: Giorgio Arena <giorgio.arena@arm.com>
Diffstat (limited to 'tests/validation/CL')
-rw-r--r-- | tests/validation/CL/BatchNormalizationLayer.cpp | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/tests/validation/CL/BatchNormalizationLayer.cpp b/tests/validation/CL/BatchNormalizationLayer.cpp index 3d1848bd11..e67f4cc199 100644 --- a/tests/validation/CL/BatchNormalizationLayer.cpp +++ b/tests/validation/CL/BatchNormalizationLayer.cpp @@ -62,6 +62,29 @@ const auto common_fusion_dataset = combine(combine(combine(framework::dataset::m framework::dataset::make("UseBeta", { false, true })), framework::dataset::make("UseGamma", { false, true })), framework::dataset::make("Epsilon", { 0.001f })); + +bool validate_zero_padding(TensorShape shape0, const TensorShape shape1, float epsilon, ActivationLayerInfo act_info, DataType dt, DataLayout data_layout) +{ + if(data_layout == DataLayout::NHWC) + { + permute(shape0, PermutationVector(2U, 0U, 1U)); + } + + // Create tensors + CLTensor src = create_tensor<CLTensor>(shape0, dt, 1, QuantizationInfo(), data_layout); + CLTensor dst = create_tensor<CLTensor>(shape0, dt, 1, QuantizationInfo(), data_layout); + CLTensor mean = create_tensor<CLTensor>(shape1, dt, 1); + CLTensor var = create_tensor<CLTensor>(shape1, dt, 1); + CLTensor beta = create_tensor<CLTensor>(shape1, dt, 1); + CLTensor gamma = create_tensor<CLTensor>(shape1, dt, 1); + + // Create and configure function + CLBatchNormalizationLayer norm; + norm.configure(&src, &dst, &mean, &var, &beta, &gamma, epsilon, act_info); + + return src.info()->padding().empty() && dst.info()->padding().empty() && mean.info()->padding().empty() && var.info()->padding().empty() && beta.info()->padding().empty() + && gamma.info()->padding().empty(); +} } // namespace TEST_SUITE(CL) @@ -118,6 +141,16 @@ DATA_TEST_CASE(Validate, framework::DatasetMode::ALL, zip(zip(zip(zip( // clang-format on // *INDENT-ON* +DATA_TEST_CASE(ValidateZeroPadding, framework::DatasetMode::ALL, combine(combine(combine(datasets::SmallRandomBatchNormalizationLayerDataset(), + act_infos), + framework::dataset::make("DataType", { DataType::F32, DataType::F16 })), + framework::dataset::make("DataLayout", { DataLayout::NHWC })), + shape0, shape1, episilon, act_infos, data_type, data_layout) +{ + bool status = validate_zero_padding(shape0, shape1, episilon, act_infos, data_type, data_layout); + ARM_COMPUTE_EXPECT(status, framework::LogLevel::ERRORS); +} + TEST_SUITE(Float) TEST_SUITE(FP32) FIXTURE_DATA_TEST_CASE(Random, CLBatchNormalizationLayerFixture<float>, framework::DatasetMode::PRECOMMIT, combine(combine(combine(combine(datasets::SmallRandomBatchNormalizationLayerDataset(), |