ArmNN
 21.08
ClMemCopyTests.cpp
Go to the documentation of this file.
1 //
2 // Copyright © 2017 Arm Ltd. All rights reserved.
3 // SPDX-License-Identifier: MIT
4 //
5 
7 
10 
13 
14 #include <doctest/doctest.h>
15 
16 TEST_SUITE("ClMemCopy")
17 {
18 TEST_CASE("CopyBetweenCpuAndGpu")
19 {
21  MemCopyTest<armnn::RefWorkloadFactory, armnn::ClWorkloadFactory, armnn::DataType::Float32>(false);
22  auto predResult = CompareTensors(result.m_ActualData, result.m_ExpectedData,
23  result.m_ActualShape, result.m_ExpectedShape);
24  CHECK_MESSAGE(predResult.m_Result, predResult.m_Message.str());
25 }
26 
27 TEST_CASE("CopyBetweenGpuAndCpu")
28 {
30  MemCopyTest<armnn::ClWorkloadFactory, armnn::RefWorkloadFactory, armnn::DataType::Float32>(false);
31  auto predResult = CompareTensors(result.m_ActualData, result.m_ExpectedData,
32  result.m_ActualShape, result.m_ExpectedShape);
33  CHECK_MESSAGE(predResult.m_Result, predResult.m_Message.str());
34 }
35 
36 TEST_CASE("CopyBetweenCpuAndGpuWithSubtensors")
37 {
39  MemCopyTest<armnn::RefWorkloadFactory, armnn::ClWorkloadFactory, armnn::DataType::Float32>(true);
40  auto predResult = CompareTensors(result.m_ActualData, result.m_ExpectedData,
41  result.m_ActualShape, result.m_ExpectedShape);
42  CHECK_MESSAGE(predResult.m_Result, predResult.m_Message.str());
43 }
44 
45 TEST_CASE("CopyBetweenGpuAndCpuWithSubtensors")
46 {
48  MemCopyTest<armnn::ClWorkloadFactory, armnn::RefWorkloadFactory, armnn::DataType::Float32>(true);
49  auto predResult = CompareTensors(result.m_ActualData, result.m_ExpectedData,
50  result.m_ActualShape, result.m_ExpectedShape);
51  CHECK_MESSAGE(predResult.m_Result, predResult.m_Message.str());
52 }
53 
54 }
armnn::TensorShape m_ExpectedShape
armnn::PredicateResult CompareTensors(const std::vector< T > &actualData, const std::vector< T > &expectedData, const armnn::TensorShape &actualShape, const armnn::TensorShape &expectedShape, bool compareBoolean=false, bool isDynamic=false)
std::vector< T > m_ExpectedData
TEST_SUITE("ClMemCopy")
std::vector< T > m_ActualData
armnn::TensorShape m_ActualShape