From c42a987aa53d0fd842c34dee90abef5a9ff15fa4 Mon Sep 17 00:00:00 2001 From: Colm Donelan Date: Wed, 2 Feb 2022 16:35:09 +0000 Subject: IVGCVSW-6635 Move MemCopyTestImpl from acl to armnnTestUtils. * Move MemCopyTestImpl.hpp from src/backends/aclCommon/test/ to include/armnnTestutils. * Refactor MemCopyTests in aclCommon, cl and Neon. * Introduce RefMemCopyTests to exercise this utility in x86 builds. Signed-off-by: Colm Donelan Change-Id: I8824f013d3656658ed0a2904bb79384e3af68641 --- src/backends/cl/test/ClCreateWorkloadTests.cpp | 2 +- src/backends/cl/test/ClLayerSupportTests.cpp | 2 +- src/backends/cl/test/ClLayerTests.cpp | 2 +- src/backends/cl/test/ClMemCopyTests.cpp | 40 +++++++++++++++++++------- src/backends/cl/test/OpenClTimerTest.cpp | 2 +- 5 files changed, 34 insertions(+), 14 deletions(-) (limited to 'src/backends/cl') diff --git a/src/backends/cl/test/ClCreateWorkloadTests.cpp b/src/backends/cl/test/ClCreateWorkloadTests.cpp index 4a28205ade..4f53b921d0 100644 --- a/src/backends/cl/test/ClCreateWorkloadTests.cpp +++ b/src/backends/cl/test/ClCreateWorkloadTests.cpp @@ -11,7 +11,7 @@ #include #include #include -#include +#include #include #include diff --git a/src/backends/cl/test/ClLayerSupportTests.cpp b/src/backends/cl/test/ClLayerSupportTests.cpp index f3df594762..8d9a7f107d 100644 --- a/src/backends/cl/test/ClLayerSupportTests.cpp +++ b/src/backends/cl/test/ClLayerSupportTests.cpp @@ -8,7 +8,7 @@ #include #include #include -#include +#include #include #include diff --git a/src/backends/cl/test/ClLayerTests.cpp b/src/backends/cl/test/ClLayerTests.cpp index 967a7e446c..7f63e6326c 100644 --- a/src/backends/cl/test/ClLayerTests.cpp +++ b/src/backends/cl/test/ClLayerTests.cpp @@ -6,7 +6,7 @@ #include "ClContextControlFixture.hpp" #include "ClWorkloadFactoryHelper.hpp" -#include +#include #include #include diff --git a/src/backends/cl/test/ClMemCopyTests.cpp b/src/backends/cl/test/ClMemCopyTests.cpp index 98b873fb6f..739ea7cdb3 100644 --- a/src/backends/cl/test/ClMemCopyTests.cpp +++ b/src/backends/cl/test/ClMemCopyTests.cpp @@ -3,22 +3,42 @@ // SPDX-License-Identifier: MIT // -#include "ClWorkloadFactoryHelper.hpp" - +#include +#include +#include #include -#include +#include +#include + +namespace +{ -#include -#include +template <> +struct MemCopyTestHelper +{ + static armnn::IBackendInternal::IMemoryManagerSharedPtr GetMemoryManager() + { + armnn::ClBackend backend; + return backend.CreateMemoryManager(); + } -#include + static armnn::ClWorkloadFactory GetFactory( + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ModelOptions& modelOptions = {}) + { + armnn::ClBackend backend; + return armnn::ClWorkloadFactory(armnn::PolymorphicPointerDowncast(memoryManager), + backend.CreateBackendSpecificModelContext(modelOptions)); + } +}; +} // namespace TEST_SUITE("ClMemCopy") { TEST_CASE("CopyBetweenCpuAndGpu") { LayerTestResult result = - MemCopyTest(false); + MemCopyTest(false); auto predResult = CompareTensors(result.m_ActualData, result.m_ExpectedData, result.m_ActualShape, result.m_ExpectedShape); CHECK_MESSAGE(predResult.m_Result, predResult.m_Message.str()); @@ -27,7 +47,7 @@ TEST_CASE("CopyBetweenCpuAndGpu") TEST_CASE("CopyBetweenGpuAndCpu") { LayerTestResult result = - MemCopyTest(false); + MemCopyTest(false); auto predResult = CompareTensors(result.m_ActualData, result.m_ExpectedData, result.m_ActualShape, result.m_ExpectedShape); CHECK_MESSAGE(predResult.m_Result, predResult.m_Message.str()); @@ -36,7 +56,7 @@ TEST_CASE("CopyBetweenGpuAndCpu") TEST_CASE("CopyBetweenCpuAndGpuWithSubtensors") { LayerTestResult result = - MemCopyTest(true); + MemCopyTest(true); auto predResult = CompareTensors(result.m_ActualData, result.m_ExpectedData, result.m_ActualShape, result.m_ExpectedShape); CHECK_MESSAGE(predResult.m_Result, predResult.m_Message.str()); @@ -45,7 +65,7 @@ TEST_CASE("CopyBetweenCpuAndGpuWithSubtensors") TEST_CASE("CopyBetweenGpuAndCpuWithSubtensors") { LayerTestResult result = - MemCopyTest(true); + MemCopyTest(true); auto predResult = CompareTensors(result.m_ActualData, result.m_ExpectedData, result.m_ActualShape, result.m_ExpectedShape); CHECK_MESSAGE(predResult.m_Result, predResult.m_Message.str()); diff --git a/src/backends/cl/test/OpenClTimerTest.cpp b/src/backends/cl/test/OpenClTimerTest.cpp index 3d273903bd..24a0afacef 100644 --- a/src/backends/cl/test/OpenClTimerTest.cpp +++ b/src/backends/cl/test/OpenClTimerTest.cpp @@ -7,7 +7,7 @@ #include "ClWorkloadFactoryHelper.hpp" -#include +#include #include #include -- cgit v1.2.1