diff options
author | James Conroy <james.conroy@arm.com> | 2019-07-02 10:57:56 +0100 |
---|---|---|
committer | Narumol Prangnawarat <narumol.prangnawarat@arm.com> | 2019-07-09 10:21:21 +0000 |
commit | 6059784511ce472c9df2289582ad13a0e2aa160e (patch) | |
tree | 3b072ed96d1822441f967321e461c6d2ff66b5e9 /src/backends/cl | |
parent | a5b5bbf7a01758d49fa3f14431b9f8c23a97fe9e (diff) | |
download | armnn-6059784511ce472c9df2289582ad13a0e2aa160e.tar.gz |
IVGCVSW-3391 Add SpaceToDepth CreateWorkload and EndToEnd tests
* Refactored existing EndToEnd tests, moved
tests in reference to backendsCommon.
* Enabled EndToEnd tests for CL.
* Added new Ref/CL CreateWorkload tests.
Signed-off-by: James Conroy <james.conroy@arm.com>
Change-Id: I0a5e52961a8aca540d43241a3805d19c9c6ff56c
Diffstat (limited to 'src/backends/cl')
-rw-r--r-- | src/backends/cl/test/ClCreateWorkloadTests.cpp | 37 | ||||
-rw-r--r-- | src/backends/cl/test/ClEndToEndTests.cpp | 21 |
2 files changed, 58 insertions, 0 deletions
diff --git a/src/backends/cl/test/ClCreateWorkloadTests.cpp b/src/backends/cl/test/ClCreateWorkloadTests.cpp index 9e4f85b46c..b89abdb473 100644 --- a/src/backends/cl/test/ClCreateWorkloadTests.cpp +++ b/src/backends/cl/test/ClCreateWorkloadTests.cpp @@ -890,4 +890,41 @@ BOOST_AUTO_TEST_CASE(CreateConcatDim3Uint8Workload) ClCreateConcatWorkloadTest<ClConcatWorkload, armnn::DataType::QuantisedAsymm8>({ 2, 3, 2, 10 }, 3); } +template <typename SpaceToDepthWorkloadType, typename armnn::DataType DataType> +static void ClSpaceToDepthWorkloadTest() +{ + Graph graph; + ClWorkloadFactory factory = + ClWorkloadFactoryHelper::GetFactory(ClWorkloadFactoryHelper::GetMemoryManager()); + + auto workload = CreateSpaceToDepthWorkloadTest<SpaceToDepthWorkloadType, DataType>(factory, graph); + + SpaceToDepthQueueDescriptor queueDescriptor = workload->GetData(); + auto inputHandle = boost::polymorphic_downcast<IClTensorHandle*>(queueDescriptor.m_Inputs[0]); + auto outputHandle = boost::polymorphic_downcast<IClTensorHandle*>(queueDescriptor.m_Outputs[0]); + + BOOST_TEST(CompareIClTensorHandleShape(inputHandle, { 1, 2, 2, 1 })); + BOOST_TEST(CompareIClTensorHandleShape(outputHandle, { 1, 1, 1, 4 })); +} + +BOOST_AUTO_TEST_CASE(CreateSpaceToDepthFloat32Workload) +{ + ClSpaceToDepthWorkloadTest<ClSpaceToDepthWorkload, armnn::DataType::Float32>(); +} + +BOOST_AUTO_TEST_CASE(CreateSpaceToDepthFloat16Workload) +{ + ClSpaceToDepthWorkloadTest<ClSpaceToDepthWorkload, armnn::DataType::Float16>(); +} + +BOOST_AUTO_TEST_CASE(CreateSpaceToDepthQAsymm8Workload) +{ + ClSpaceToDepthWorkloadTest<ClSpaceToDepthWorkload, armnn::DataType::QuantisedAsymm8>(); +} + +BOOST_AUTO_TEST_CASE(CreateSpaceToDepthQSymm16Workload) +{ + ClSpaceToDepthWorkloadTest<ClSpaceToDepthWorkload, armnn::DataType::QuantisedSymm16>(); +} + BOOST_AUTO_TEST_SUITE_END() diff --git a/src/backends/cl/test/ClEndToEndTests.cpp b/src/backends/cl/test/ClEndToEndTests.cpp index ba01c5a980..7cb7c5c646 100644 --- a/src/backends/cl/test/ClEndToEndTests.cpp +++ b/src/backends/cl/test/ClEndToEndTests.cpp @@ -8,6 +8,7 @@ #include <backendsCommon/test/ArithmeticTestImpl.hpp> #include <backendsCommon/test/ConcatTestImpl.hpp> #include <backendsCommon/test/DequantizeEndToEndTestImpl.hpp> +#include <backendsCommon/test/SpaceToDepthEndToEndTestImpl.hpp> #include <backendsCommon/test/SplitterEndToEndTestImpl.hpp> #include <backendsCommon/test/TransposeConvolution2dEndToEndTestImpl.hpp> @@ -102,6 +103,26 @@ BOOST_AUTO_TEST_CASE(ClGreaterBroadcastEndToEndUint8Test) expectedOutput); } +BOOST_AUTO_TEST_CASE(ClSpaceToDepthNHWCEndToEndTest1) +{ + SpaceToDepthNHWCEndToEndTest1(defaultBackends); +} + +BOOST_AUTO_TEST_CASE(ClSpaceToDepthNCHWEndToEndTest1) +{ + SpaceToDepthNCHWEndToEndTest1(defaultBackends); +} + +BOOST_AUTO_TEST_CASE(ClSpaceToDepthNHWCEndToEndTest2) +{ + SpaceToDepthNHWCEndToEndTest2(defaultBackends); +} + +BOOST_AUTO_TEST_CASE(ClSpaceToDepthNCHWEndToEndTest2) +{ + SpaceToDepthNCHWEndToEndTest2(defaultBackends); +} + BOOST_AUTO_TEST_CASE(ClSplitter1dEndToEndTest) { Splitter1dEndToEnd<armnn::DataType::Float32>(defaultBackends); |