From 38b72e8de898d84a1481e242803da61009719891 Mon Sep 17 00:00:00 2001 From: Teresa Charlin Date: Wed, 4 May 2022 17:54:19 +0100 Subject: IVGCVSW-6937 Add INT32 support to FLOOR Signed-off-by: Teresa Charlin Change-Id: I6f7cddb2d23c67ae682132d18f98776c074dcb3b --- src/backends/backendsCommon/WorkloadData.cpp | 3 ++- src/backends/backendsCommon/test/layerTests/FloorTestImpl.cpp | 11 ++++++++--- src/backends/reference/RefLayerSupport.cpp | 5 +++-- src/backends/reference/test/RefLayerTests.cpp | 1 + 4 files changed, 14 insertions(+), 6 deletions(-) diff --git a/src/backends/backendsCommon/WorkloadData.cpp b/src/backends/backendsCommon/WorkloadData.cpp index 962ecde24b..70d7641f41 100644 --- a/src/backends/backendsCommon/WorkloadData.cpp +++ b/src/backends/backendsCommon/WorkloadData.cpp @@ -1953,7 +1953,8 @@ void FloorQueueDescriptor::Validate(const WorkloadInfo& workloadInfo) const DataType::BFloat16, DataType::Float32, DataType::Float16, - DataType::QSymmS16 + DataType::QSymmS16, + DataType::Signed32 }; ValidateDataTypes(inputTensorInfo, supportedTypes, descriptorName); diff --git a/src/backends/backendsCommon/test/layerTests/FloorTestImpl.cpp b/src/backends/backendsCommon/test/layerTests/FloorTestImpl.cpp index 2bf8c97af5..377c2aaf1a 100644 --- a/src/backends/backendsCommon/test/layerTests/FloorTestImpl.cpp +++ b/src/backends/backendsCommon/test/layerTests/FloorTestImpl.cpp @@ -19,10 +19,10 @@ LayerTestResult SimpleFloorTest( { IgnoreUnused(memoryManager); armnn::TensorInfo inputTensorInfo({1, 3, 2, 3}, ArmnnType); - inputTensorInfo.SetQuantizationScale(0.1f); + inputTensorInfo.SetQuantizationScale(1.0f); armnn::TensorInfo outputTensorInfo(inputTensorInfo); - outputTensorInfo.SetQuantizationScale(0.1f); + outputTensorInfo.SetQuantizationScale(1.0f); std::vector input = ConvertToDataType( { @@ -80,9 +80,14 @@ SimpleFloorTest( const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, const armnn::ITensorHandleFactory& tensorHandleFactory); - template LayerTestResult, 4> SimpleFloorTest( armnn::IWorkloadFactory& workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, const armnn::ITensorHandleFactory& tensorHandleFactory); + +template LayerTestResult, 4> +SimpleFloorTest( + armnn::IWorkloadFactory& workloadFactory, + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory); \ No newline at end of file diff --git a/src/backends/reference/RefLayerSupport.cpp b/src/backends/reference/RefLayerSupport.cpp index 3bc4affb28..66661cb521 100644 --- a/src/backends/reference/RefLayerSupport.cpp +++ b/src/backends/reference/RefLayerSupport.cpp @@ -1500,11 +1500,12 @@ bool RefLayerSupport::IsFloorSupported(const TensorInfo& input, IgnoreUnused(output); bool supported = true; - std::array supportedTypes = + std::array supportedTypes = { DataType::BFloat16, DataType::Float32, - DataType::Float16 + DataType::Float16, + DataType::Signed32 }; supported &= CheckSupportRule(TypeAnyOf(input, supportedTypes), reasonIfUnsupported, diff --git a/src/backends/reference/test/RefLayerTests.cpp b/src/backends/reference/test/RefLayerTests.cpp index 496b11db91..5db335fc15 100644 --- a/src/backends/reference/test/RefLayerTests.cpp +++ b/src/backends/reference/test/RefLayerTests.cpp @@ -1643,6 +1643,7 @@ ARMNN_AUTO_TEST_CASE_WITH_THF(SimpleFillS32, SimpleFillTest) // Floor ARMNN_AUTO_TEST_CASE_WITH_THF(SimpleFloor, SimpleFloorTest) ARMNN_AUTO_TEST_CASE_WITH_THF(SimpleFloorFloat16, SimpleFloorTest) +ARMNN_AUTO_TEST_CASE_WITH_THF(SimpleFloorInt32, SimpleFloorTest) // Reshape ARMNN_AUTO_TEST_CASE_WITH_THF(SimpleReshapeFloat32, SimpleReshapeTest) -- cgit v1.2.1