From f550713476f404a82e59bd68223a8a4955e753f2 Mon Sep 17 00:00:00 2001 From: Matteo Martincigh Date: Tue, 4 Jun 2019 10:59:47 +0100 Subject: IVGCVSW-3213 Extend the Reference BatchNormalization workload to support the new QSymm16 type * Added QSymm16 to the range of supported types for batch normalization ref workloads * Added unit tests for QSymm16 Change-Id: I5b2fcfbd9cb5af149ebfe24e2d95f3affa2e3690 Signed-off-by: Matteo Martincigh --- src/backends/reference/RefLayerSupport.cpp | 5 +++-- src/backends/reference/test/RefCreateWorkloadTests.cpp | 12 ++++++++++++ src/backends/reference/test/RefLayerTests.cpp | 2 ++ 3 files changed, 17 insertions(+), 2 deletions(-) (limited to 'src/backends/reference') diff --git a/src/backends/reference/RefLayerSupport.cpp b/src/backends/reference/RefLayerSupport.cpp index aeff51d853..adc63e965b 100644 --- a/src/backends/reference/RefLayerSupport.cpp +++ b/src/backends/reference/RefLayerSupport.cpp @@ -288,10 +288,11 @@ bool RefLayerSupport::IsBatchNormalizationSupported(const TensorInfo& input, { ignore_unused(descriptor); - std::array supportedTypes = + std::array supportedTypes = { DataType::Float32, - DataType::QuantisedAsymm8 + DataType::QuantisedAsymm8, + DataType::QuantisedSymm16 }; bool supported = true; diff --git a/src/backends/reference/test/RefCreateWorkloadTests.cpp b/src/backends/reference/test/RefCreateWorkloadTests.cpp index a0c614564d..83e3f6c7bb 100644 --- a/src/backends/reference/test/RefCreateWorkloadTests.cpp +++ b/src/backends/reference/test/RefCreateWorkloadTests.cpp @@ -229,6 +229,18 @@ BOOST_AUTO_TEST_CASE(CreateBatchNormalizationUint8WorkloadNhwc) (DataLayout::NHWC); } +BOOST_AUTO_TEST_CASE(CreateBatchNormalizationInt16Workload) +{ + RefCreateBatchNormalizationWorkloadTest + (DataLayout::NCHW); +} + +BOOST_AUTO_TEST_CASE(CreateBatchNormalizationInt16WorkloadNhwc) +{ + RefCreateBatchNormalizationWorkloadTest + (DataLayout::NHWC); +} + BOOST_AUTO_TEST_CASE(CreateConvertFp16ToFp32Float32Workload) { Graph graph; diff --git a/src/backends/reference/test/RefLayerTests.cpp b/src/backends/reference/test/RefLayerTests.cpp index 162027032e..afeadb9485 100644 --- a/src/backends/reference/test/RefLayerTests.cpp +++ b/src/backends/reference/test/RefLayerTests.cpp @@ -357,6 +357,8 @@ ARMNN_AUTO_TEST_CASE(BatchNorm, BatchNormTest) ARMNN_AUTO_TEST_CASE(BatchNormNhwc, BatchNormNhwcTest) ARMNN_AUTO_TEST_CASE(BatchNormUint8, BatchNormUint8Test) ARMNN_AUTO_TEST_CASE(BatchNormUint8Nhwc, BatchNormUint8NhwcTest) +ARMNN_AUTO_TEST_CASE(BatchNormInt16, BatchNormInt16Test) +ARMNN_AUTO_TEST_CASE(BatchNormInt16Nhwc, BatchNormInt16NhwcTest) // Resize Bilinear - NCHW ARMNN_AUTO_TEST_CASE(SimpleResizeBilinear, SimpleResizeBilinearTest, armnn::DataLayout::NCHW) -- cgit v1.2.1