aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGian Marco Iodice <gianmarco.iodice@arm.com>2021-05-07 09:21:47 +0100
committerSheri Zhang <sheri.zhang@arm.com>2021-05-07 10:11:14 +0000
commit2ba39b6a9c38d76a15745034671af9a5bbc2032a (patch)
treed0d25205fdb29c2ef915a224a1221b3b73f04a23
parent78e76912f0758c60e83922098231645efc02d8d6 (diff)
downloadComputeLibrary-2ba39b6a9c38d76a15745034671af9a5bbc2032a.tar.gz
Fix missing DATA_TYPE in DOT_PRODUCT4_INTEGER8 OpenCL macro
- DOT_PRODUCT8_INTEGER8 and DOT_PRODUCT16_INTEGER8 are calling DOT_PRODUCT4_INTEGER8 without passing DST_DATA_TYPE Resolves COMPMID-4491 Change-Id: I394bd2f9208489e820885e49ed40e607d6470620 Signed-off-by: Gian Marco Iodice <gianmarco.iodice@arm.com> Reviewed-on: https://review.mlplatform.org/c/ml/ComputeLibrary/+/5594 Reviewed-by: Georgios Pinitas <georgios.pinitas@arm.com> Comments-Addressed: Arm Jenkins <bsgcomp@arm.com> Tested-by: Arm Jenkins <bsgcomp@arm.com>
-rw-r--r--src/core/CL/cl_kernels/tile_helpers.h8
-rw-r--r--tests/validation/CL/DirectConvolutionLayer.cpp56
2 files changed, 32 insertions, 32 deletions
diff --git a/src/core/CL/cl_kernels/tile_helpers.h b/src/core/CL/cl_kernels/tile_helpers.h
index 8b6d5309e3..3d37f0d31f 100644
--- a/src/core/CL/cl_kernels/tile_helpers.h
+++ b/src/core/CL/cl_kernels/tile_helpers.h
@@ -124,13 +124,13 @@
#endif // defined(ARM_COMPUTE_OPENCL_DOT8_ACC_ENABLED) && defined(cl_arm_integer_dot_product_accumulate_int8)
#define DOT_PRODUCT8_INTEGER8(DST_DATA_TYPE, a, b, c) \
({ \
- DOT_PRODUCT4_INTEGER8((a.lo), (b.lo), c); \
- DOT_PRODUCT4_INTEGER8((a.hi), (b.hi), c); \
+ DOT_PRODUCT4_INTEGER8(DST_DATA_TYPE, (a.lo), (b.lo), c); \
+ DOT_PRODUCT4_INTEGER8(DST_DATA_TYPE, (a.hi), (b.hi), c); \
})
#define DOT_PRODUCT16_INTEGER8(DST_DATA_TYPE, a, b, c) \
({ \
- DOT_PRODUCT8_INTEGER8((a.lo), (b.lo), c); \
- DOT_PRODUCT8_INTEGER8((a.hi), (b.hi), c); \
+ DOT_PRODUCT8_INTEGER8(DST_DATA_TYPE, (a.lo), (b.lo), c); \
+ DOT_PRODUCT8_INTEGER8(DST_DATA_TYPE, (a.hi), (b.hi), c); \
})
/** Load a vector from global memory (tensor)
diff --git a/tests/validation/CL/DirectConvolutionLayer.cpp b/tests/validation/CL/DirectConvolutionLayer.cpp
index 946de7f943..a057f48c87 100644
--- a/tests/validation/CL/DirectConvolutionLayer.cpp
+++ b/tests/validation/CL/DirectConvolutionLayer.cpp
@@ -221,10 +221,10 @@ TEST_SUITE(NHWC)
TEST_SUITE(FP16)
FIXTURE_DATA_TEST_CASE(RunSmall, CLDirectConvolutionLayerFixture<half>, framework::DatasetMode::PRECOMMIT,
combine(combine(combine(zip(zip(zip(zip(zip(zip(
- framework::dataset::make("InputShape", { TensorShape(27U, 13U, 2U),
- TensorShape(9U, 5U, 6U, 4U),
- TensorShape(3U, 5U, 7U, 2U),
- TensorShape(32U, 37U, 3U) } ),
+ framework::dataset::make("InputShape", { TensorShape(27U, 13U, 23U),
+ TensorShape(19U, 5U, 16U, 4U),
+ TensorShape(13U, 5U, 17U, 2U),
+ TensorShape(32U, 37U, 13U) } ),
framework::dataset::make("StrideX", { 1, 3, 1, 1 })),
framework::dataset::make("StrideY", { 1, 3, 2, 1 })),
framework::dataset::make("PadX", { 1, 3, 0, 4 })),
@@ -259,10 +259,10 @@ TEST_SUITE_END() // FP16
TEST_SUITE(FP32)
FIXTURE_DATA_TEST_CASE(RunSmall, CLDirectConvolutionLayerFixture<float>, framework::DatasetMode::PRECOMMIT,
combine(combine(combine(zip(zip(zip(zip(zip(zip(
- framework::dataset::make("InputShape", { TensorShape(27U, 13U, 2U),
- TensorShape(9U, 5U, 6U, 4U),
- TensorShape(3U, 5U, 7U, 2U),
- TensorShape(32U, 37U, 3U) } ),
+ framework::dataset::make("InputShape", { TensorShape(27U, 13U, 23U),
+ TensorShape(19U, 5U, 16U, 4U),
+ TensorShape(13U, 5U, 17U, 2U),
+ TensorShape(32U, 37U, 13U) } ),
framework::dataset::make("StrideX", { 1, 3, 1, 1 })),
framework::dataset::make("StrideY", { 1, 3, 2, 1 })),
framework::dataset::make("PadX", { 1, 3, 0, 4 })),
@@ -277,10 +277,10 @@ FIXTURE_DATA_TEST_CASE(RunSmall, CLDirectConvolutionLayerFixture<float>, framewo
}
FIXTURE_DATA_TEST_CASE(RunMixedDataLayout, CLDirectConvolutionLayerMixedDataLayoutFixture<float>, framework::DatasetMode::PRECOMMIT,
combine(combine(combine(zip(zip(zip(zip(zip(zip(
- framework::dataset::make("InputShape", { TensorShape(27U, 13U, 2U),
- TensorShape(9U, 5U, 6U, 4U),
- TensorShape(3U, 5U, 7U, 2U),
- TensorShape(32U, 37U, 3U) } ),
+ framework::dataset::make("InputShape", { TensorShape(27U, 13U, 23U),
+ TensorShape(19U, 5U, 16U, 4U),
+ TensorShape(13U, 5U, 17U, 2U),
+ TensorShape(32U, 37U, 13U) } ),
framework::dataset::make("StrideX", { 1 })),
framework::dataset::make("StrideY", { 2 })),
framework::dataset::make("PadX", { 1 })),
@@ -314,10 +314,10 @@ TEST_SUITE(Quantized)
TEST_SUITE(QASYMM8)
FIXTURE_DATA_TEST_CASE(RunSmall, CLDirectConvolutionLayerQuantizedFixture<uint8_t>, framework::DatasetMode::PRECOMMIT,
combine(combine(combine(combine(zip(zip(zip(zip(zip(zip(
- framework::dataset::make("InputShape", { TensorShape(27U, 13U, 2U),
- TensorShape(9U, 5U, 6U, 4U),
- TensorShape(3U, 5U, 7U, 2U),
- TensorShape(32U, 37U, 3U) } ),
+ framework::dataset::make("InputShape", { TensorShape(27U, 13U, 23U),
+ TensorShape(19U, 5U, 16U, 4U),
+ TensorShape(13U, 5U, 17U, 2U),
+ TensorShape(32U, 37U, 13U) } ),
framework::dataset::make("StrideX", { 1, 3, 1, 1 })),
framework::dataset::make("StrideY", { 1, 3, 2, 1 })),
framework::dataset::make("PadX", { 1, 3, 0, 4 })),
@@ -333,10 +333,10 @@ FIXTURE_DATA_TEST_CASE(RunSmall, CLDirectConvolutionLayerQuantizedFixture<uint8_
}
FIXTURE_DATA_TEST_CASE(RunMixedDataLayout, CLDirectConvolutionLayerQuantizedMixedDataLayoutFixture<uint8_t>, framework::DatasetMode::PRECOMMIT,
combine(combine(combine(combine(zip(zip(zip(zip(zip(zip(
- framework::dataset::make("InputShape", { TensorShape(27U, 13U, 2U),
- TensorShape(9U, 5U, 6U, 4U),
- TensorShape(3U, 5U, 7U, 2U),
- TensorShape(32U, 37U, 3U) } ),
+ framework::dataset::make("InputShape", { TensorShape(27U, 13U, 23U),
+ TensorShape(19U, 5U, 16U, 4U),
+ TensorShape(13U, 5U, 17U, 2U),
+ TensorShape(32U, 37U, 13U) } ),
framework::dataset::make("StrideX", { 1 })),
framework::dataset::make("StrideY", { 2 })),
framework::dataset::make("PadX", { 1 })),
@@ -371,10 +371,10 @@ TEST_SUITE_END() // QASYMM8
TEST_SUITE(QASYMM8_SIGNED)
FIXTURE_DATA_TEST_CASE(RunSmall, CLDirectConvolutionLayerQuantizedFixture<int8_t>, framework::DatasetMode::PRECOMMIT,
combine(combine(combine(combine(zip(zip(zip(zip(zip(zip(
- framework::dataset::make("InputShape", { TensorShape(27U, 13U, 2U),
- TensorShape(9U, 5U, 6U, 4U),
- TensorShape(3U, 5U, 7U, 2U),
- TensorShape(32U, 37U, 3U) } ),
+ framework::dataset::make("InputShape", { TensorShape(27U, 13U, 23U),
+ TensorShape(19U, 5U, 16U, 4U),
+ TensorShape(13U, 5U, 17U, 2U),
+ TensorShape(32U, 37U, 13U) } ),
framework::dataset::make("StrideX", { 1, 3, 1, 1 })),
framework::dataset::make("StrideY", { 1, 3, 2, 1 })),
framework::dataset::make("PadX", { 1, 3, 0, 4 })),
@@ -390,10 +390,10 @@ FIXTURE_DATA_TEST_CASE(RunSmall, CLDirectConvolutionLayerQuantizedFixture<int8_t
}
FIXTURE_DATA_TEST_CASE(RunMixedDataLayout, CLDirectConvolutionLayerQuantizedMixedDataLayoutFixture<int8_t>, framework::DatasetMode::PRECOMMIT,
combine(combine(combine(combine(zip(zip(zip(zip(zip(zip(
- framework::dataset::make("InputShape", { TensorShape(27U, 13U, 2U),
- TensorShape(9U, 5U, 6U, 4U),
- TensorShape(3U, 5U, 7U, 2U),
- TensorShape(32U, 37U, 3U) } ),
+ framework::dataset::make("InputShape", { TensorShape(27U, 13U, 23U),
+ TensorShape(19U, 5U, 16U, 4U),
+ TensorShape(13U, 5U, 17U, 2U),
+ TensorShape(32U, 37U, 13U) } ),
framework::dataset::make("StrideX", { 1 })),
framework::dataset::make("StrideY", { 1 })),
framework::dataset::make("PadX", { 1 })),