aboutsummaryrefslogtreecommitdiff
path: root/src/backends/cl
diff options
context:
space:
mode:
authorSadik Armagan <sadik.armagan@arm.com>2021-06-01 09:24:52 +0100
committerSadik Armagan <sadik.armagan@arm.com>2021-06-02 13:00:56 +0000
commit483c811ea6fd0e7801aac1afd979ed02a649064b (patch)
treea0969c8786528334b62043b40983fa21d54d524e /src/backends/cl
parent31f86bfeb311ccc0c6ed94c35a78a51551148ea4 (diff)
downloadarmnn-483c811ea6fd0e7801aac1afd979ed02a649064b.tar.gz
IVGCVSW-5962 Remove boost::multi_array
* Replaced all instances of boost::multi_array with flat vectors. * Updated LayerTestResult struct with new member variables. * Updated CompareTensor function to compare flat vectors and the shape. * Removed MakeTensor function from TensorHelpers.hpp. * Removed GetTensorShapeAsArray function from LayerTestResult.hpp. * Removed boost::array usage. * Removed boost::extents usages. * Removed boost::random usages. Signed-off-by: Matthew Sloyan <matthew.sloyan@arm.com> Signed-off-by: Sadik Armagan <sadik.armagan@arm.com> Change-Id: Iccde9d6640b534940292ff048fb80c00b38c4743
Diffstat (limited to 'src/backends/cl')
-rw-r--r--src/backends/cl/test/ClLayerTests.cpp1
-rw-r--r--src/backends/cl/test/ClMemCopyTests.cpp12
-rw-r--r--src/backends/cl/test/OpenClTimerTest.cpp36
3 files changed, 27 insertions, 22 deletions
diff --git a/src/backends/cl/test/ClLayerTests.cpp b/src/backends/cl/test/ClLayerTests.cpp
index e1729fc7de..918ef039a3 100644
--- a/src/backends/cl/test/ClLayerTests.cpp
+++ b/src/backends/cl/test/ClLayerTests.cpp
@@ -241,6 +241,7 @@ ARMNN_AUTO_TEST_CASE_WITH_THF(ConcatUint8DifferentInputOutputQParam,
ARMNN_AUTO_TEST_CASE_WITH_THF(SimpleNormalizationAcross, SimpleNormalizationAcrossTest)
ARMNN_AUTO_TEST_CASE_WITH_THF(SimpleNormalizationWithin, SimpleNormalizationWithinTest)
ARMNN_AUTO_TEST_CASE_WITH_THF(SimpleNormalizationAcrossNhwc, SimpleNormalizationAcrossNhwcTest)
+ARMNN_AUTO_TEST_CASE_WITH_THF(AcrossChannelNormalization, AcrossChannelNormalizationTest)
// Pooling
ARMNN_AUTO_TEST_CASE_WITH_THF(SimpleMaxPooling2dSize3x3Stride2x4, SimpleMaxPooling2dSize3x3Stride2x4Test, true)
diff --git a/src/backends/cl/test/ClMemCopyTests.cpp b/src/backends/cl/test/ClMemCopyTests.cpp
index c26f7bdae8..1048e73c1b 100644
--- a/src/backends/cl/test/ClMemCopyTests.cpp
+++ b/src/backends/cl/test/ClMemCopyTests.cpp
@@ -19,7 +19,8 @@ BOOST_AUTO_TEST_CASE(CopyBetweenCpuAndGpu)
{
LayerTestResult<float, 4> result =
MemCopyTest<armnn::RefWorkloadFactory, armnn::ClWorkloadFactory, armnn::DataType::Float32>(false);
- auto predResult = CompareTensors(result.output, result.outputExpected);
+ auto predResult = CompareTensors(result.m_ActualData, result.m_ExpectedData,
+ result.m_ActualShape, result.m_ExpectedShape);
BOOST_TEST(predResult.m_Result, predResult.m_Message.str());
}
@@ -27,7 +28,8 @@ BOOST_AUTO_TEST_CASE(CopyBetweenGpuAndCpu)
{
LayerTestResult<float, 4> result =
MemCopyTest<armnn::ClWorkloadFactory, armnn::RefWorkloadFactory, armnn::DataType::Float32>(false);
- auto predResult = CompareTensors(result.output, result.outputExpected);
+ auto predResult = CompareTensors(result.m_ActualData, result.m_ExpectedData,
+ result.m_ActualShape, result.m_ExpectedShape);
BOOST_TEST(predResult.m_Result, predResult.m_Message.str());
}
@@ -35,7 +37,8 @@ BOOST_AUTO_TEST_CASE(CopyBetweenCpuAndGpuWithSubtensors)
{
LayerTestResult<float, 4> result =
MemCopyTest<armnn::RefWorkloadFactory, armnn::ClWorkloadFactory, armnn::DataType::Float32>(true);
- auto predResult = CompareTensors(result.output, result.outputExpected);
+ auto predResult = CompareTensors(result.m_ActualData, result.m_ExpectedData,
+ result.m_ActualShape, result.m_ExpectedShape);
BOOST_TEST(predResult.m_Result, predResult.m_Message.str());
}
@@ -43,7 +46,8 @@ BOOST_AUTO_TEST_CASE(CopyBetweenGpuAndCpuWithSubtensors)
{
LayerTestResult<float, 4> result =
MemCopyTest<armnn::ClWorkloadFactory, armnn::RefWorkloadFactory, armnn::DataType::Float32>(true);
- auto predResult = CompareTensors(result.output, result.outputExpected);
+ auto predResult = CompareTensors(result.m_ActualData, result.m_ExpectedData,
+ result.m_ActualShape, result.m_ExpectedShape);
BOOST_TEST(predResult.m_Result, predResult.m_Message.str());
}
diff --git a/src/backends/cl/test/OpenClTimerTest.cpp b/src/backends/cl/test/OpenClTimerTest.cpp
index 1b86d2e304..7c8e27710b 100644
--- a/src/backends/cl/test/OpenClTimerTest.cpp
+++ b/src/backends/cl/test/OpenClTimerTest.cpp
@@ -55,22 +55,22 @@ BOOST_AUTO_TEST_CASE(OpenClTimerBatchNorm)
TensorInfo outputTensorInfo({num, channels, height, width}, DataType::Float32);
TensorInfo tensorInfo({channels}, DataType::Float32);
- auto input = MakeTensor<float, 4>(inputTensorInfo,
- {
- 1.f, 4.f,
- 4.f, 2.f,
- 1.f, 6.f,
+ std::vector<float> input =
+ {
+ 1.f, 4.f,
+ 4.f, 2.f,
+ 1.f, 6.f,
- 1.f, 1.f,
- 4.f, 1.f,
- -2.f, 4.f
- });
+ 1.f, 1.f,
+ 4.f, 1.f,
+ -2.f, 4.f
+ };
// these values are per-channel of the input
- auto mean = MakeTensor<float, 1>(tensorInfo, { 3.f, -2.f });
- auto variance = MakeTensor<float, 1>(tensorInfo, { 4.f, 9.f });
- auto beta = MakeTensor<float, 1>(tensorInfo, { 3.f, 2.f });
- auto gamma = MakeTensor<float, 1>(tensorInfo, { 2.f, 1.f });
+ std::vector<float> mean = { 3.f, -2.f };
+ std::vector<float> variance = { 4.f, 9.f };
+ std::vector<float> beta = { 3.f, 2.f };
+ std::vector<float> gamma = { 2.f, 1.f };
ARMNN_NO_DEPRECATE_WARN_BEGIN
std::unique_ptr<ITensorHandle> inputHandle = workloadFactory.CreateTensorHandle(inputTensorInfo);
@@ -84,10 +84,10 @@ BOOST_AUTO_TEST_CASE(OpenClTimerBatchNorm)
ScopedTensorHandle betaTensor(tensorInfo);
ScopedTensorHandle gammaTensor(tensorInfo);
- AllocateAndCopyDataToITensorHandle(&meanTensor, &mean[0]);
- AllocateAndCopyDataToITensorHandle(&varianceTensor, &variance[0]);
- AllocateAndCopyDataToITensorHandle(&betaTensor, &beta[0]);
- AllocateAndCopyDataToITensorHandle(&gammaTensor, &gamma[0]);
+ AllocateAndCopyDataToITensorHandle(&meanTensor, mean.data());
+ AllocateAndCopyDataToITensorHandle(&varianceTensor, variance.data());
+ AllocateAndCopyDataToITensorHandle(&betaTensor, beta.data());
+ AllocateAndCopyDataToITensorHandle(&gammaTensor, gamma.data());
AddInputToWorkload(data, info, inputTensorInfo, inputHandle.get());
AddOutputToWorkload(data, info, outputTensorInfo, outputHandle.get());
@@ -105,7 +105,7 @@ BOOST_AUTO_TEST_CASE(OpenClTimerBatchNorm)
inputHandle->Allocate();
outputHandle->Allocate();
- CopyDataToITensorHandle(inputHandle.get(), &input[0][0][0][0]);
+ CopyDataToITensorHandle(inputHandle.get(), input.data());
OpenClTimer openClTimer;