From a3b20473ea0583ba4c6a2c17ba2d59ed958c0aa7 Mon Sep 17 00:00:00 2001 From: Teresa Charlin Date: Thu, 6 Jun 2019 11:12:32 +0100 Subject: IVGCVSW-3142 Refactor reference Pooling2d workload Signed-off-by: Teresa Charlin Change-Id: I94c973ab747309c0214268c9c39f6d8f3fc7b255 --- src/backends/backendsCommon/WorkloadData.cpp | 15 +++++++++++++++ .../backendsCommon/test/WorkloadDataValidation.cpp | 2 +- 2 files changed, 16 insertions(+), 1 deletion(-) (limited to 'src/backends/backendsCommon') diff --git a/src/backends/backendsCommon/WorkloadData.cpp b/src/backends/backendsCommon/WorkloadData.cpp index d0aaf1db38..a95abf12ae 100644 --- a/src/backends/backendsCommon/WorkloadData.cpp +++ b/src/backends/backendsCommon/WorkloadData.cpp @@ -856,6 +856,21 @@ void Pooling2dQueueDescriptor::Validate(const WorkloadInfo& workloadInfo) const ValidateTensorNumDimensions(workloadInfo.m_InputTensorInfos[0], "Pooling2dQueueDescriptor", 4, "input"); ValidateTensorNumDimensions(workloadInfo.m_OutputTensorInfos[0], "Pooling2dQueueDescriptor", 4, "output"); + + std::vector supportedTypes = + { + DataType::Float32, + DataType::Float16, + DataType::QuantisedAsymm8 + }; + + ValidateDataTypes(workloadInfo.m_InputTensorInfos[0], + supportedTypes, + "Pooling2dQueueDescriptor"); + + ValidateDataTypes(workloadInfo.m_OutputTensorInfos[0], + {workloadInfo.m_InputTensorInfos[0].GetDataType()}, + "Pooling2dQueueDescriptor"); } void ResizeBilinearQueueDescriptor::Validate(const WorkloadInfo& workloadInfo) const diff --git a/src/backends/backendsCommon/test/WorkloadDataValidation.cpp b/src/backends/backendsCommon/test/WorkloadDataValidation.cpp index 7d04e3220f..a2e049d06d 100644 --- a/src/backends/backendsCommon/test/WorkloadDataValidation.cpp +++ b/src/backends/backendsCommon/test/WorkloadDataValidation.cpp @@ -47,7 +47,7 @@ BOOST_AUTO_TEST_CASE(RefPooling2dFloat32Workload_Validate_WrongDimTensor) AddInputToWorkload(invalidData, invalidInfo, inputTensorInfo, nullptr); // Invalid argument exception is expected, input tensor has to be 4D. - BOOST_CHECK_THROW(RefPooling2dFloat32Workload(invalidData, invalidInfo), armnn::InvalidArgumentException); + BOOST_CHECK_THROW(RefPooling2dWorkload(invalidData, invalidInfo), armnn::InvalidArgumentException); } BOOST_AUTO_TEST_CASE(SoftmaxQueueDescriptor_Validate_WrongInputHeight) -- cgit v1.2.1