diff options
author | Francis Murtagh <francis.murtagh@arm.com> | 2020-07-30 18:03:40 +0100 |
---|---|---|
committer | Francis Murtagh <francis.murtagh@arm.com> | 2020-07-30 18:03:40 +0100 |
commit | e8ac13308b84b2ee9bc930ac8d27e657300e462d (patch) | |
tree | 116d6489e5231bd2e093898d335be380be4590e2 /src | |
parent | 9a2d1d004473bbba25e1c9ecb0b8d6fa7fced6f1 (diff) | |
download | armnn-e8ac13308b84b2ee9bc930ac8d27e657300e462d.tar.gz |
IVGCVSW-5174 Fix i386 Floor and AbsTest
* Remove QSymm16 support for Floor to match NNApi and disable RefLayerTest
* Return nullptr for floor workload if quantized type
* Fix SimpleAbsTest incorrect output
Signed-off-by: Francis Murtagh <francis.murtagh@arm.com>
Change-Id: I80d9e2fb78777d0a3fc7ce6d12b5eb4af3fd1d3a
Diffstat (limited to 'src')
-rw-r--r-- | src/armnnDeserializer/test/DeserializeAbs.cpp | 2 | ||||
-rw-r--r-- | src/backends/reference/RefLayerSupport.cpp | 5 | ||||
-rw-r--r-- | src/backends/reference/RefWorkloadFactory.cpp | 9 | ||||
-rw-r--r-- | src/backends/reference/test/RefLayerTests.cpp | 1 |
4 files changed, 11 insertions, 6 deletions
diff --git a/src/armnnDeserializer/test/DeserializeAbs.cpp b/src/armnnDeserializer/test/DeserializeAbs.cpp index 4d6504bc10..bdaa869e87 100644 --- a/src/armnnDeserializer/test/DeserializeAbs.cpp +++ b/src/armnnDeserializer/test/DeserializeAbs.cpp @@ -114,7 +114,7 @@ BOOST_AUTO_TEST_SUITE(Deserializer) RunTest<4, armnn::DataType::Float32>( 0, {{"InputLayer", { -100.0f, -50.5f, -25.9999f, -0.5f , 0.0f, 1.5555f, 25.5f, 100.0f }}}, - {{"OutputLayer", { 100.0f, 50.0f, 25.9999f, 0.5f , 0.0f, 1.5555f, 25.5f, 100.0f }}}); + {{"OutputLayer", { 100.0f, 50.5f, 25.9999f, 0.5f , 0.0f, 1.5555f, 25.5f, 100.0f }}}); } BOOST_AUTO_TEST_SUITE_END()
\ No newline at end of file diff --git a/src/backends/reference/RefLayerSupport.cpp b/src/backends/reference/RefLayerSupport.cpp index 1886d3253b..80527bdcb2 100644 --- a/src/backends/reference/RefLayerSupport.cpp +++ b/src/backends/reference/RefLayerSupport.cpp @@ -889,12 +889,11 @@ bool RefLayerSupport::IsFloorSupported(const TensorInfo& input, IgnoreUnused(output); bool supported = true; - std::array<DataType,4> supportedTypes = + std::array<DataType,3> supportedTypes = { DataType::BFloat16, DataType::Float32, - DataType::Float16, - DataType::QSymmS16 + DataType::Float16 }; supported &= CheckSupportRule(TypeAnyOf(input, supportedTypes), reasonIfUnsupported, diff --git a/src/backends/reference/RefWorkloadFactory.cpp b/src/backends/reference/RefWorkloadFactory.cpp index cac1d1bd8a..4ab1701391 100644 --- a/src/backends/reference/RefWorkloadFactory.cpp +++ b/src/backends/reference/RefWorkloadFactory.cpp @@ -327,7 +327,14 @@ std::unique_ptr<IWorkload> RefWorkloadFactory::CreateFill(const FillQueueDescrip std::unique_ptr<IWorkload> RefWorkloadFactory::CreateFloor(const FloorQueueDescriptor& descriptor, const WorkloadInfo& info) const { - return std::make_unique<RefFloorWorkload>(descriptor, info); + if(IsQuantizedType(info.m_InputTensorInfos[0].GetDataType())) + { + return nullptr; + } + else + { + return std::make_unique<RefFloorWorkload>(descriptor, info); + } } std::unique_ptr<IWorkload> RefWorkloadFactory::CreateFullyConnected( diff --git a/src/backends/reference/test/RefLayerTests.cpp b/src/backends/reference/test/RefLayerTests.cpp index df1997ddeb..f79e7e588f 100644 --- a/src/backends/reference/test/RefLayerTests.cpp +++ b/src/backends/reference/test/RefLayerTests.cpp @@ -1366,7 +1366,6 @@ ARMNN_AUTO_TEST_CASE(SimpleFillS32, SimpleFillTest<DataType::Signed32>) // Floor ARMNN_AUTO_TEST_CASE(SimpleFloor, SimpleFloorTest<DataType::Float32>) ARMNN_AUTO_TEST_CASE(SimpleFloorFloat16, SimpleFloorTest<DataType::Float16>) -ARMNN_AUTO_TEST_CASE(SimpleFloorQuantisedSymm16, SimpleFloorTest<DataType::QSymmS16>) // Reshape ARMNN_AUTO_TEST_CASE(SimpleReshapeFloat32, SimpleReshapeTest<DataType::Float32>) |