diff options
author | narpra01 <narumol.prangnawarat@arm.com> | 2018-09-28 11:07:51 +0100 |
---|---|---|
committer | Matthew Bentham <matthew.bentham@arm.com> | 2018-10-10 16:16:57 +0100 |
commit | 1e4c31dafb1c8984a126fa1d211ed8f9eedaf7cc (patch) | |
tree | 006e40b3bbfdc4a202cdada8fa9afec0dd8fffae /src/armnn/test/NetworkTests.cpp | |
parent | 33cea4db0b2729c5dbd50f9c0985578c60baffdd (diff) | |
download | armnn-1e4c31dafb1c8984a126fa1d211ed8f9eedaf7cc.tar.gz |
IVGCVSW-1812 Adding Ref implementation and tests of MeanWorkloads
Change-Id: I6fb15c407024e3b91d5abf4513f8090be5821760
Diffstat (limited to 'src/armnn/test/NetworkTests.cpp')
-rw-r--r-- | src/armnn/test/NetworkTests.cpp | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/src/armnn/test/NetworkTests.cpp b/src/armnn/test/NetworkTests.cpp index 11c26da8b4..2f36f4da09 100644 --- a/src/armnn/test/NetworkTests.cpp +++ b/src/armnn/test/NetworkTests.cpp @@ -845,6 +845,39 @@ BOOST_AUTO_TEST_CASE(OptimizeValidateWorkloadsCpuRefPermuteLayer) } } +BOOST_AUTO_TEST_CASE(OptimizeValidateWorkloadsCpuRefMeanLayer) +{ + // Create runtime in which test will run + armnn::IRuntime::CreationOptions options; + armnn::IRuntimePtr runtime(armnn::IRuntime::Create(options)); + + std::vector<armnn::Compute> backends = {armnn::Compute::CpuRef}; + + // build up the structure of the network + armnn::INetworkPtr net(armnn::INetwork::Create()); + + armnn::IConnectableLayer* input = net->AddInputLayer(0); + + armnn::MeanDescriptor descriptor({ 0, 1 }, false); + armnn::IConnectableLayer* meanLayer = net->AddMeanLayer(descriptor); + + armnn::IConnectableLayer* output = net->AddOutputLayer(0); + + input->GetOutputSlot(0).Connect(meanLayer->GetInputSlot(0)); + meanLayer->GetOutputSlot(0).Connect(output->GetInputSlot(0)); + + input->GetOutputSlot(0).SetTensorInfo(armnn::TensorInfo({ 4, 3, 2 }, armnn::DataType::Float32)); + meanLayer->GetOutputSlot(0).SetTensorInfo(armnn::TensorInfo({ 2 }, armnn::DataType::Float32)); + + // optimize the network + armnn::IOptimizedNetworkPtr optNet = armnn::Optimize(*net, backends, runtime->GetDeviceSpec()); + + for (auto&& layer : static_cast<armnn::OptimizedNetwork*>(optNet.get())->GetGraph()) + { + BOOST_CHECK_EQUAL(armnn::Compute::CpuRef, layer->GetComputeDevice()); + } +} + BOOST_AUTO_TEST_CASE(FP16TurboModeTestOnCpuRef) { // Test to check when FP16 Turbo mode set |