diff options
author | Ferran Balaguer <ferran.balaguer@arm.com> | 2019-08-21 13:28:38 +0100 |
---|---|---|
committer | Ferran Balaguer <ferran.balaguer@arm.com> | 2019-08-26 12:02:28 +0100 |
commit | dcaa6109c95034aa3b945acd50a2882e40f13370 (patch) | |
tree | d8bf0c12ee153bec9d58097a01418df65a276935 /src/backends/reference/test/RefEndToEndTests.cpp | |
parent | 1a0f691a24b1514afe4d3ea6e1322357083af526 (diff) | |
download | armnn-dcaa6109c95034aa3b945acd50a2882e40f13370.tar.gz |
IVGCVSW-3175 Add Regression Tests for Zero Copy
Signed-off-by: Ferran Balaguer <ferran.balaguer@arm.com>
Change-Id: I6f16ea0dca359283a3b187e2f046f82a7dc2ff7c
Diffstat (limited to 'src/backends/reference/test/RefEndToEndTests.cpp')
-rw-r--r-- | src/backends/reference/test/RefEndToEndTests.cpp | 86 |
1 files changed, 14 insertions, 72 deletions
diff --git a/src/backends/reference/test/RefEndToEndTests.cpp b/src/backends/reference/test/RefEndToEndTests.cpp index 31e9b339ec..ee42c9e979 100644 --- a/src/backends/reference/test/RefEndToEndTests.cpp +++ b/src/backends/reference/test/RefEndToEndTests.cpp @@ -322,78 +322,6 @@ BOOST_AUTO_TEST_CASE(TrivialMin) BOOST_TEST(outputData[3] == 2); } -BOOST_AUTO_TEST_CASE(RefNoCopyWorkloads) -{ - using namespace armnn; - - // Create runtime in which test will run - IRuntime::CreationOptions options; - IRuntimePtr runtime(armnn::IRuntime::Create(options)); - - // build up the structure of the network - INetworkPtr net(INetwork::Create()); - - IConnectableLayer* input = net->AddInputLayer(0); - - NormalizationDescriptor descriptor; - IConnectableLayer* norm = net->AddNormalizationLayer(descriptor); - - IConnectableLayer* output = net->AddOutputLayer(0); - - input->GetOutputSlot(0).Connect(norm->GetInputSlot(0)); - norm->GetOutputSlot(0).Connect(output->GetInputSlot(0)); - - input->GetOutputSlot(0).SetTensorInfo(TensorInfo({ 1, 1, 4, 1 }, DataType::Float32)); - norm->GetOutputSlot(0).SetTensorInfo(TensorInfo({ 1, 1, 4, 1 }, DataType::Float32)); - - // Optimize the network - IOptimizedNetworkPtr optNet = Optimize(*net, defaultBackends, runtime->GetDeviceSpec()); - - // Loads it into the runtime. - NetworkId netId; - runtime->LoadNetwork(netId, std::move(optNet)); - - // Creates structures for input & output - std::vector<float> inputData - { - 1.0f, 2.0f, 3.0f, 4.0f - }; - - std::vector<float> outputData(4); - - InputTensors inputTensors - { - {0,armnn::ConstTensor(runtime->GetInputTensorInfo(netId, 0), inputData.data())}, - }; - OutputTensors outputTensors - { - {0,armnn::Tensor(runtime->GetOutputTensorInfo(netId, 0), outputData.data())} - }; - - // The result of the inference is not important, just the fact that there - // should not be CopyMemGeneric workloads. - runtime->GetProfiler(netId)->EnableProfiling(true); - - // Do the inference - runtime->EnqueueWorkload(netId, inputTensors, outputTensors); - - // Retrieve the Profiler.Print() output to get the workload execution - ProfilerManager& profilerManager = armnn::ProfilerManager::GetInstance(); - std::stringstream ss; - profilerManager.GetProfiler()->Print(ss);; - std::string dump = ss.str(); - - // Contains RefNormalizationWorkload - std::size_t found = dump.find("RefNormalizationWorkload"); - BOOST_TEST(found != std::string::npos); - // Contains SyncMemGeneric - found = dump.find("SyncMemGeneric"); - BOOST_TEST(found != std::string::npos); - // No contains CopyMemGeneric - found = dump.find("CopyMemGeneric"); - BOOST_TEST(found == std::string::npos); -} - BOOST_AUTO_TEST_CASE(RefEqualSimpleEndToEndTest) { const std::vector<uint8_t> expectedOutput({ 1, 1, 1, 1, 0, 0, 0, 0, @@ -1023,4 +951,18 @@ BOOST_AUTO_TEST_CASE(RefResizeNearestNeighborEndToEndInt16NhwcTest) ResizeNearestNeighborEndToEnd<armnn::DataType::QuantisedSymm16>(defaultBackends, armnn::DataLayout::NHWC); } +#if !defined(__ANDROID__) +// Only run these tests on non Android platforms +BOOST_AUTO_TEST_CASE(RefImportNonAlignedPointerTest) +{ + ImportNonAlignedPointerTest(defaultBackends); +} + +BOOST_AUTO_TEST_CASE(RefImportAlignedPointerTest) +{ + ImportAlignedPointerTest(defaultBackends); +} + +#endif + BOOST_AUTO_TEST_SUITE_END()
\ No newline at end of file |