ArmNN
 20.02
RefEndToEndTests.cpp File Reference

Go to the source code of this file.

Functions

 BOOST_AUTO_TEST_CASE (RefAbsEndToEndTestFloat32)
 
 BOOST_AUTO_TEST_CASE (RefAbsEndToEndTestUint8)
 
 BOOST_AUTO_TEST_CASE (RefAbsEndToEndTestInt16)
 
 BOOST_AUTO_TEST_CASE (ConstantUsage_Ref_Float32)
 
 BOOST_AUTO_TEST_CASE (ConstantUsage_Ref_Uint8)
 
 BOOST_AUTO_TEST_CASE (Unsigned8)
 
 BOOST_AUTO_TEST_CASE (TrivialAdd)
 
 BOOST_AUTO_TEST_CASE (MultipleOutputs)
 
 BOOST_AUTO_TEST_CASE (TrivialMin)
 
 BOOST_AUTO_TEST_CASE (RefEqualSimpleEndToEndTest)
 
 BOOST_AUTO_TEST_CASE (RefGreaterSimpleEndToEndTest)
 
 BOOST_AUTO_TEST_CASE (RefEqualSimpleEndToEndUint8Test)
 
 BOOST_AUTO_TEST_CASE (RefGreaterSimpleEndToEndUint8Test)
 
 BOOST_AUTO_TEST_CASE (RefEqualBroadcastEndToEndTest)
 
 BOOST_AUTO_TEST_CASE (RefGreaterBroadcastEndToEndTest)
 
 BOOST_AUTO_TEST_CASE (RefEqualBroadcastEndToEndUint8Test)
 
 BOOST_AUTO_TEST_CASE (RefGreaterBroadcastEndToEndUint8Test)
 
 BOOST_AUTO_TEST_CASE (RefBatchToSpaceNdEndToEndFloat32NHWCTest)
 
 BOOST_AUTO_TEST_CASE (RefBatchToSpaceNdEndToEndUint8NHWCTest)
 
 BOOST_AUTO_TEST_CASE (RefBatchToSpaceNdEndToEndQSymm16NHWCTest)
 
 BOOST_AUTO_TEST_CASE (RefBatchToSpaceNdEndToEndFloat32NCHWTest)
 
 BOOST_AUTO_TEST_CASE (RefBatchToSpaceNdEndToEndUint8NCHWTest)
 
 BOOST_AUTO_TEST_CASE (RefBatchToSpaceNdEndToEndQSymm16NCHWTest)
 
 BOOST_AUTO_TEST_CASE (RefBatchToSpaceNdEndToEndComplexFloat32NHWCTest)
 
 BOOST_AUTO_TEST_CASE (RefBatchToSpaceNdEndToEndComplexUint8NHWCTest)
 
 BOOST_AUTO_TEST_CASE (RefBatchToSpaceNdEndToEndComplexQSymm16NHWCTest)
 
 BOOST_AUTO_TEST_CASE (RefBatchToSpaceNdEndToEndComplexFloat32NCHWTest)
 
 BOOST_AUTO_TEST_CASE (RefBatchToSpaceNdEndToEndComplexUint8NCHWTest)
 
 BOOST_AUTO_TEST_CASE (RefBatchToSpaceNdEndToEndComplexQSymm16NCHWTest)
 
 BOOST_AUTO_TEST_CASE (RefConcatEndToEndDim0Test)
 
 BOOST_AUTO_TEST_CASE (RefConcatEndToEndDim0Uint8Test)
 
 BOOST_AUTO_TEST_CASE (RefConcatEndToEndDim1Test)
 
 BOOST_AUTO_TEST_CASE (RefConcatEndToEndDim1Uint8Test)
 
 BOOST_AUTO_TEST_CASE (RefConcatEndToEndDim2Test)
 
 BOOST_AUTO_TEST_CASE (RefConcatEndToEndDim2Uint8Test)
 
 BOOST_AUTO_TEST_CASE (RefConcatEndToEndDim3Test)
 
 BOOST_AUTO_TEST_CASE (RefConcatEndToEndDim3Uint8Test)
 
 BOOST_AUTO_TEST_CASE (RefGatherFloatTest)
 
 BOOST_AUTO_TEST_CASE (RefGatherUint8Test)
 
 BOOST_AUTO_TEST_CASE (RefGatherInt16Test)
 
 BOOST_AUTO_TEST_CASE (RefGatherMultiDimFloatTest)
 
 BOOST_AUTO_TEST_CASE (RefGatherMultiDimUint8Test)
 
 BOOST_AUTO_TEST_CASE (RefGatherMultiDimInt16Test)
 
 BOOST_AUTO_TEST_CASE (DephtToSpaceEndToEndNchwFloat32)
 
 BOOST_AUTO_TEST_CASE (DephtToSpaceEndToEndNchwFloat16)
 
 BOOST_AUTO_TEST_CASE (DephtToSpaceEndToEndNchwUint8)
 
 BOOST_AUTO_TEST_CASE (DephtToSpaceEndToEndNchwInt16)
 
 BOOST_AUTO_TEST_CASE (DephtToSpaceEndToEndNhwcFloat32)
 
 BOOST_AUTO_TEST_CASE (DephtToSpaceEndToEndNhwcFloat16)
 
 BOOST_AUTO_TEST_CASE (DephtToSpaceEndToEndNhwcUint8)
 
 BOOST_AUTO_TEST_CASE (DephtToSpaceEndToEndNhwcInt16)
 
 BOOST_AUTO_TEST_CASE (DequantizeEndToEndSimpleTest)
 
 BOOST_AUTO_TEST_CASE (DequantizeEndToEndOffsetTest)
 
 BOOST_AUTO_TEST_CASE (DequantizeEndToEndSimpleInt16Test)
 
 BOOST_AUTO_TEST_CASE (DequantizeEndToEndOffsetInt16Test)
 
 BOOST_AUTO_TEST_CASE (RefDetectionPostProcessRegularNmsTest)
 
void QuantizeData (uint8_t *quant, const float *dequant, const TensorInfo &info)
 
 BOOST_AUTO_TEST_CASE (RefDetectionPostProcessRegularNmsUint8Test)
 
 BOOST_AUTO_TEST_CASE (RefDetectionPostProcessFastNmsTest)
 
 BOOST_AUTO_TEST_CASE (RefDetectionPostProcessFastNmsUint8Test)
 
 BOOST_AUTO_TEST_CASE (RefLogSoftmaxEndToEndTest)
 
 BOOST_AUTO_TEST_CASE (RefPreluEndToEndTestFloat32)
 
 BOOST_AUTO_TEST_CASE (RefPreluEndToEndTestUint8)
 
 BOOST_AUTO_TEST_CASE (RefPreluEndToEndTestQSymm16)
 
 BOOST_AUTO_TEST_CASE (RefSpaceToDepthNhwcEndToEndTest1)
 
 BOOST_AUTO_TEST_CASE (RefSpaceToDepthNchwEndToEndTest1)
 
 BOOST_AUTO_TEST_CASE (RefSpaceToDepthNhwcEndToEndTest2)
 
 BOOST_AUTO_TEST_CASE (RefSpaceToDepthNchwEndToEndTest2)
 
 BOOST_AUTO_TEST_CASE (RefSplitter1dEndToEndTest)
 
 BOOST_AUTO_TEST_CASE (RefSplitter1dEndToEndUint8Test)
 
 BOOST_AUTO_TEST_CASE (RefSplitter2dDim0EndToEndTest)
 
 BOOST_AUTO_TEST_CASE (RefSplitter2dDim1EndToEndTest)
 
 BOOST_AUTO_TEST_CASE (RefSplitter2dDim0EndToEndUint8Test)
 
 BOOST_AUTO_TEST_CASE (RefSplitter2dDim1EndToEndUint8Test)
 
 BOOST_AUTO_TEST_CASE (RefSplitter3dDim0EndToEndTest)
 
 BOOST_AUTO_TEST_CASE (RefSplitter3dDim1EndToEndTest)
 
 BOOST_AUTO_TEST_CASE (RefSplitter3dDim2EndToEndTest)
 
 BOOST_AUTO_TEST_CASE (RefSplitter3dDim0EndToEndUint8Test)
 
 BOOST_AUTO_TEST_CASE (RefSplitter3dDim1EndToEndUint8Test)
 
 BOOST_AUTO_TEST_CASE (RefSplitter3dDim2EndToEndUint8Test)
 
 BOOST_AUTO_TEST_CASE (RefSplitter4dDim0EndToEndTest)
 
 BOOST_AUTO_TEST_CASE (RefSplitter4dDim1EndToEndTest)
 
 BOOST_AUTO_TEST_CASE (RefSplitter4dDim2EndToEndTest)
 
 BOOST_AUTO_TEST_CASE (RefSplitter4dDim3EndToEndTest)
 
 BOOST_AUTO_TEST_CASE (RefSplitter4dDim0EndToEndUint8Test)
 
 BOOST_AUTO_TEST_CASE (RefSplitter4dDim1EndToEndUint8Test)
 
 BOOST_AUTO_TEST_CASE (RefSplitter4dDim2EndToEndUint8Test)
 
 BOOST_AUTO_TEST_CASE (RefSplitter4dDim3EndToEndUint8Test)
 
 BOOST_AUTO_TEST_CASE (RefTransposeConvolution2dEndToEndFloatNchwTest)
 
 BOOST_AUTO_TEST_CASE (RefTransposeConvolution2dEndToEndUint8NchwTest)
 
 BOOST_AUTO_TEST_CASE (RefTransposeConvolution2dEndToEndInt16NchwTest)
 
 BOOST_AUTO_TEST_CASE (RefTransposeConvolution2dEndToEndFloatNhwcTest)
 
 BOOST_AUTO_TEST_CASE (RefTransposeConvolution2dEndToEndUint8NhwcTest)
 
 BOOST_AUTO_TEST_CASE (RefTransposeConvolution2dEndToEndInt16NhwcTest)
 
 BOOST_AUTO_TEST_CASE (RefResizeBilinearEndToEndFloatNchwTest)
 
 BOOST_AUTO_TEST_CASE (RefResizeBilinearEndToEndUint8NchwTest)
 
 BOOST_AUTO_TEST_CASE (RefResizeBilinearEndToEndInt16NchwTest)
 
 BOOST_AUTO_TEST_CASE (RefResizeBilinearEndToEndFloatNhwcTest)
 
 BOOST_AUTO_TEST_CASE (RefResizeBilinearEndToEndUint8NhwcTest)
 
 BOOST_AUTO_TEST_CASE (RefResizeBilinearEndToEndInt16NhwcTest)
 
 BOOST_AUTO_TEST_CASE (RefResizeNearestNeighborEndToEndFloatNchwTest)
 
 BOOST_AUTO_TEST_CASE (RefResizeNearestNeighborEndToEndUint8NchwTest)
 
 BOOST_AUTO_TEST_CASE (RefResizeNearestNeighborEndToEndInt16NchwTest)
 
 BOOST_AUTO_TEST_CASE (RefResizeNearestNeighborEndToEndFloatNhwcTest)
 
 BOOST_AUTO_TEST_CASE (RefResizeNearestNeighborEndToEndUint8NhwcTest)
 
 BOOST_AUTO_TEST_CASE (RefResizeNearestNeighborEndToEndInt16NhwcTest)
 
 BOOST_AUTO_TEST_CASE (RefInstanceNormalizationNhwcEndToEndTest1)
 
 BOOST_AUTO_TEST_CASE (RefInstanceNormalizationNchwEndToEndTest1)
 
 BOOST_AUTO_TEST_CASE (RefInstanceNormalizationNhwcEndToEndTest2)
 
 BOOST_AUTO_TEST_CASE (RefInstanceNormalizationNchwEndToEndTest2)
 
 BOOST_AUTO_TEST_CASE (RefArgMaxSimpleTest)
 
 BOOST_AUTO_TEST_CASE (RefArgMaxSimpleUint8Test)
 
 BOOST_AUTO_TEST_CASE (RefArgMinSimpleTest)
 
 BOOST_AUTO_TEST_CASE (RefArgMinSimpleUint8Test)
 
 BOOST_AUTO_TEST_CASE (RefArgMaxAxis0Test)
 
 BOOST_AUTO_TEST_CASE (RefArgMaxAxis0Uint8Test)
 
 BOOST_AUTO_TEST_CASE (RefArgMinAxis0Test)
 
 BOOST_AUTO_TEST_CASE (RefArgMinAxis0Uint8Test)
 
 BOOST_AUTO_TEST_CASE (RefArgMaxAxis1Test)
 
 BOOST_AUTO_TEST_CASE (RefArgMaxAxis1Uint8Test)
 
 BOOST_AUTO_TEST_CASE (RefArgMinAxis1Test)
 
 BOOST_AUTO_TEST_CASE (RefArgMinAxis1Uint8Test)
 
 BOOST_AUTO_TEST_CASE (RefArgMaxAxis2Test)
 
 BOOST_AUTO_TEST_CASE (RefArgMaxAxis2Uint8Test)
 
 BOOST_AUTO_TEST_CASE (RefArgMinAxis2Test)
 
 BOOST_AUTO_TEST_CASE (RefArgMinAxis2Uint8Test)
 
 BOOST_AUTO_TEST_CASE (RefArgMaxAxis3Test)
 
 BOOST_AUTO_TEST_CASE (RefArgMaxAxis3Uint8Test)
 
 BOOST_AUTO_TEST_CASE (RefArgMinAxis3Test)
 
 BOOST_AUTO_TEST_CASE (RefArgMinAxis3Uint8Test)
 
 BOOST_AUTO_TEST_CASE (RefImportNonAlignedPointerTest)
 
 BOOST_AUTO_TEST_CASE (RefExportNonAlignedPointerTest)
 
 BOOST_AUTO_TEST_CASE (RefImportAlignedPointerTest)
 
 BOOST_AUTO_TEST_CASE (RefImportOnlyWorkload)
 
 BOOST_AUTO_TEST_CASE (RefExportOnlyWorkload)
 
 BOOST_AUTO_TEST_CASE (RefImportAndExportWorkload)
 
 BOOST_AUTO_TEST_CASE (RefExportOutputWithSeveralOutputSlotConnectionsTest)
 

Variables

std::vector< armnn::BackendIddefaultBackends = {armnn::Compute::CpuRef}
 

Function Documentation

◆ BOOST_AUTO_TEST_CASE() [1/136]

BOOST_AUTO_TEST_CASE ( RefAbsEndToEndTestFloat32  )

Definition at line 33 of file RefEndToEndTests.cpp.

References defaultBackends.

34 {
35  std::vector<float> expectedOutput =
36  {
37  1.f, 1.f, 1.f, 1.f, 5.f, 5.f, 5.f, 5.f,
38  3.f, 3.f, 3.f, 3.f, 4.f, 4.f, 4.f, 4.f
39  };
40 
41  ElementwiseUnarySimpleEndToEnd<armnn::DataType::Float32>(defaultBackends,
42  UnaryOperation::Abs,
43  expectedOutput);
44 }
std::vector< armnn::BackendId > defaultBackends

◆ BOOST_AUTO_TEST_CASE() [2/136]

BOOST_AUTO_TEST_CASE ( RefAbsEndToEndTestUint8  )

Definition at line 46 of file RefEndToEndTests.cpp.

References defaultBackends.

47 {
48  // Note the expected output will be implicitly quantized by the below test function
49  std::vector<float> expectedOutput =
50  {
51  1.f, 1.f, 1.f, 1.f, 5.f, 5.f, 5.f, 5.f,
52  3.f, 3.f, 3.f, 3.f, 4.f, 4.f, 4.f, 4.f
53  };
54 
55  ElementwiseUnarySimpleEndToEnd<armnn::DataType::QAsymmU8>(defaultBackends,
56  UnaryOperation::Abs,
57  expectedOutput);
58 }
std::vector< armnn::BackendId > defaultBackends

◆ BOOST_AUTO_TEST_CASE() [3/136]

BOOST_AUTO_TEST_CASE ( RefAbsEndToEndTestInt16  )

Definition at line 60 of file RefEndToEndTests.cpp.

References defaultBackends.

61 {
62  // Note the expected output will be implicitly quantized by the below test function
63  std::vector<float> expectedOutput =
64  {
65  1.f, 1.f, 1.f, 1.f, 5.f, 5.f, 5.f, 5.f,
66  3.f, 3.f, 3.f, 3.f, 4.f, 4.f, 4.f, 4.f
67  };
68 
69  ElementwiseUnarySimpleEndToEnd<armnn::DataType::QSymmS16>(defaultBackends,
70  UnaryOperation::Abs,
71  expectedOutput);
72 }
std::vector< armnn::BackendId > defaultBackends

◆ BOOST_AUTO_TEST_CASE() [4/136]

BOOST_AUTO_TEST_CASE ( ConstantUsage_Ref_Float32  )

Definition at line 75 of file RefEndToEndTests.cpp.

References defaultBackends.

76 {
77  BOOST_TEST(ConstantUsageFloat32Test(defaultBackends));
78 }
std::vector< armnn::BackendId > defaultBackends

◆ BOOST_AUTO_TEST_CASE() [5/136]

BOOST_AUTO_TEST_CASE ( ConstantUsage_Ref_Uint8  )

Definition at line 80 of file RefEndToEndTests.cpp.

References defaultBackends.

81 {
82  BOOST_TEST(ConstantUsageUint8Test(defaultBackends));
83 }
std::vector< armnn::BackendId > defaultBackends

◆ BOOST_AUTO_TEST_CASE() [6/136]

BOOST_AUTO_TEST_CASE ( Unsigned8  )

Definition at line 85 of file RefEndToEndTests.cpp.

References IOutputSlot::Connect(), INetwork::Create(), IRuntime::Create(), defaultBackends, armnn::error, IConnectableLayer::GetInputSlot(), IConnectableLayer::GetOutputSlot(), armnn::Optimize(), options, armnn::QAsymmU8, TensorInfo::SetQuantizationOffset(), TensorInfo::SetQuantizationScale(), IOutputSlot::SetTensorInfo(), and armnn::Success.

86 {
87  using namespace armnn;
88 
89  // Create runtime in which test will run
92 
93  // Builds up the structure of the network.
95 
96  IConnectableLayer* input = net->AddInputLayer(0, "input");
97  IConnectableLayer* softmax = net->AddSoftmaxLayer(SoftmaxDescriptor(), "softmax");
98  IConnectableLayer* output = net->AddOutputLayer(0, "output");
99 
100  input->GetOutputSlot(0).Connect(softmax->GetInputSlot(0));
101  softmax->GetOutputSlot(0).Connect(output->GetInputSlot(0));
102 
103  // Sets the tensors in the network.
104  TensorInfo inputTensorInfo(TensorShape({1, 5}), DataType::QAsymmU8);
105  inputTensorInfo.SetQuantizationOffset(100);
106  inputTensorInfo.SetQuantizationScale(10000.0f);
107  input->GetOutputSlot(0).SetTensorInfo(inputTensorInfo);
108 
109  TensorInfo outputTensorInfo(TensorShape({1, 5}), DataType::QAsymmU8);
110  outputTensorInfo.SetQuantizationOffset(0);
111  outputTensorInfo.SetQuantizationScale(1.0f/255.0f);
112  softmax->GetOutputSlot(0).SetTensorInfo(outputTensorInfo);
113 
114  // optimize the network
115  IOptimizedNetworkPtr optNet = Optimize(*net, defaultBackends, runtime->GetDeviceSpec());
116 
117  // Loads it into the runtime.
118  NetworkId netId;
119  auto error = runtime->LoadNetwork(netId, std::move(optNet));
120  BOOST_TEST(error == Status::Success);
121 
122  // Creates structures for input & output.
123  std::vector<uint8_t> inputData
124  {
125  1, 10, 3, 200, 5 // Some inputs - one of which is sufficiently larger than the others to saturate softmax.
126  };
127  std::vector<uint8_t> outputData(5);
128 
129  armnn::InputTensors inputTensors
130  {
131  {0, armnn::ConstTensor(runtime->GetInputTensorInfo(netId, 0), inputData.data())}
132  };
133  armnn::OutputTensors outputTensors
134  {
135  {0, armnn::Tensor(runtime->GetOutputTensorInfo(netId, 0), outputData.data())}
136  };
137 
138  // Does the inference.
139  runtime->EnqueueWorkload(netId, inputTensors, outputTensors);
140 
141  // Checks the results.
142  BOOST_TEST(outputData[0] == 0);
143  BOOST_TEST(outputData[1] == 0);
144  BOOST_TEST(outputData[2] == 0);
145  BOOST_TEST(outputData[3] == 255); // softmax has been saturated.
146  BOOST_TEST(outputData[4] == 0);
147 }
static IRuntimePtr Create(const CreationOptions &options)
Definition: Runtime.cpp:32
Interface for a layer that is connectable to other layers via InputSlots and OutputSlots.
Definition: INetwork.hpp:61
std::vector< armnn::BackendId > defaultBackends
std::unique_ptr< IRuntime, void(*)(IRuntime *runtime)> IRuntimePtr
Definition: IRuntime.hpp:24
std::vector< std::pair< LayerBindingId, class ConstTensor > > InputTensors
Definition: Tensor.hpp:225
int NetworkId
Definition: IRuntime.hpp:19
Copyright (c) 2020 ARM Limited.
virtual void SetTensorInfo(const TensorInfo &tensorInfo)=0
A tensor defined by a TensorInfo (shape and data type) and a mutable backing store.
Definition: Tensor.hpp:191
IOptimizedNetworkPtr Optimize(const INetwork &network, const std::vector< BackendId > &backendPreferences, const IDeviceSpec &deviceSpec, const OptimizerOptions &options=OptimizerOptions(), Optional< std::vector< std::string > &> messages=EmptyOptional())
Create an optimized version of the network.
Definition: Network.cpp:890
A tensor defined by a TensorInfo (shape and data type) and an immutable backing store.
Definition: Tensor.hpp:199
std::vector< std::pair< LayerBindingId, class Tensor > > OutputTensors
Definition: Tensor.hpp:226
std::unique_ptr< IOptimizedNetwork, void(*)(IOptimizedNetwork *network)> IOptimizedNetworkPtr
Definition: INetwork.hpp:566
virtual const IInputSlot & GetInputSlot(unsigned int index) const =0
Get a const input slot handle by slot index.
virtual const IOutputSlot & GetOutputSlot(unsigned int index) const =0
Get the const output slot handle by slot index.
std::unique_ptr< INetwork, void(*)(INetwork *network)> INetworkPtr
Definition: INetwork.hpp:101
virtual int Connect(IInputSlot &destination)=0
armnn::Runtime::CreationOptions::ExternalProfilingOptions options
A SoftmaxDescriptor for the SoftmaxLayer.
static INetworkPtr Create()
Definition: Network.cpp:49

◆ BOOST_AUTO_TEST_CASE() [7/136]

BOOST_AUTO_TEST_CASE ( TrivialAdd  )

Definition at line 149 of file RefEndToEndTests.cpp.

References IOutputSlot::Connect(), INetwork::Create(), IRuntime::Create(), defaultBackends, armnn::Float32, IConnectableLayer::GetInputSlot(), IConnectableLayer::GetOutputSlot(), armnn::Optimize(), options, and IOutputSlot::SetTensorInfo().

150 {
151  // This test was designed to match "AddTwo" in android nn/runtime/test/TestTrivialModel.cpp.
152 
153  using namespace armnn;
154 
155  // Create runtime in which test will run
158 
159  // Builds up the structure of the network.
161 
162  IConnectableLayer* input1 = net->AddInputLayer(0);
163  IConnectableLayer* input2 = net->AddInputLayer(1);
164  IConnectableLayer* add = net->AddAdditionLayer();
165  IConnectableLayer* output = net->AddOutputLayer(0);
166 
167  input1->GetOutputSlot(0).Connect(add->GetInputSlot(0));
168  input2->GetOutputSlot(0).Connect(add->GetInputSlot(1));
169  add->GetOutputSlot(0).Connect(output->GetInputSlot(0));
170 
171  // Sets the tensors in the network.
172  TensorInfo tensorInfo(TensorShape({3, 4}), DataType::Float32);
173  input1->GetOutputSlot(0).SetTensorInfo(tensorInfo);
174  input2->GetOutputSlot(0).SetTensorInfo(tensorInfo);
175  add->GetOutputSlot(0).SetTensorInfo(tensorInfo);
176 
177  // optimize the network
178  IOptimizedNetworkPtr optNet = Optimize(*net, defaultBackends, runtime->GetDeviceSpec());
179 
180  // Loads it into the runtime.
181  NetworkId netId;
182  runtime->LoadNetwork(netId, std::move(optNet));
183 
184  // Creates structures for input & output - matching android nn test.
185  std::vector<float> input1Data
186  {
187  1.f, 2.f, 3.f, 4.f, 5.f, 6.f, 7.f, 8.f, 9.f, 10.f, 11.f, 12.f
188  };
189  std::vector<float> input2Data
190  {
191  100.f, 200.f, 300.f, 400.f, 500.f, 600.f, 700.f, 800.f, 900.f, 1000.f, 1100.f, 1200.f
192  };
193  std::vector<float> outputData(12);
194 
195  InputTensors inputTensors
196  {
197  {0,armnn::ConstTensor(runtime->GetInputTensorInfo(netId, 0), input1Data.data())},
198  {1,armnn::ConstTensor(runtime->GetInputTensorInfo(netId, 0), input2Data.data())}
199  };
200  OutputTensors outputTensors
201  {
202  {0,armnn::Tensor(runtime->GetOutputTensorInfo(netId, 0), outputData.data())}
203  };
204 
205  // Does the inference.
206  runtime->EnqueueWorkload(netId, inputTensors, outputTensors);
207 
208  // Checks the results
209  BOOST_TEST(outputData[0] == 101);
210  BOOST_TEST(outputData[1] == 202);
211  BOOST_TEST(outputData[2] == 303);
212  BOOST_TEST(outputData[3] == 404);
213  BOOST_TEST(outputData[4] == 505);
214  BOOST_TEST(outputData[5] == 606);
215  BOOST_TEST(outputData[6] == 707);
216  BOOST_TEST(outputData[7] == 808);
217  BOOST_TEST(outputData[8] == 909);
218  BOOST_TEST(outputData[9] == 1010);
219  BOOST_TEST(outputData[10] == 1111);
220  BOOST_TEST(outputData[11] == 1212);
221 }
static IRuntimePtr Create(const CreationOptions &options)
Definition: Runtime.cpp:32
Interface for a layer that is connectable to other layers via InputSlots and OutputSlots.
Definition: INetwork.hpp:61
std::vector< armnn::BackendId > defaultBackends
std::unique_ptr< IRuntime, void(*)(IRuntime *runtime)> IRuntimePtr
Definition: IRuntime.hpp:24
std::vector< std::pair< LayerBindingId, class ConstTensor > > InputTensors
Definition: Tensor.hpp:225
int NetworkId
Definition: IRuntime.hpp:19
Copyright (c) 2020 ARM Limited.
virtual void SetTensorInfo(const TensorInfo &tensorInfo)=0
A tensor defined by a TensorInfo (shape and data type) and a mutable backing store.
Definition: Tensor.hpp:191
IOptimizedNetworkPtr Optimize(const INetwork &network, const std::vector< BackendId > &backendPreferences, const IDeviceSpec &deviceSpec, const OptimizerOptions &options=OptimizerOptions(), Optional< std::vector< std::string > &> messages=EmptyOptional())
Create an optimized version of the network.
Definition: Network.cpp:890
A tensor defined by a TensorInfo (shape and data type) and an immutable backing store.
Definition: Tensor.hpp:199
std::vector< std::pair< LayerBindingId, class Tensor > > OutputTensors
Definition: Tensor.hpp:226
std::unique_ptr< IOptimizedNetwork, void(*)(IOptimizedNetwork *network)> IOptimizedNetworkPtr
Definition: INetwork.hpp:566
virtual const IInputSlot & GetInputSlot(unsigned int index) const =0
Get a const input slot handle by slot index.
virtual const IOutputSlot & GetOutputSlot(unsigned int index) const =0
Get the const output slot handle by slot index.
std::unique_ptr< INetwork, void(*)(INetwork *network)> INetworkPtr
Definition: INetwork.hpp:101
virtual int Connect(IInputSlot &destination)=0
armnn::Runtime::CreationOptions::ExternalProfilingOptions options
static INetworkPtr Create()
Definition: Network.cpp:49

◆ BOOST_AUTO_TEST_CASE() [8/136]

BOOST_AUTO_TEST_CASE ( MultipleOutputs  )

Definition at line 223 of file RefEndToEndTests.cpp.

References armnn::BoundedReLu, IOutputSlot::Connect(), INetwork::Create(), IRuntime::Create(), defaultBackends, armnn::Float32, IConnectableLayer::GetInputSlot(), IConnectableLayer::GetOutputSlot(), ActivationDescriptor::m_A, ActivationDescriptor::m_B, ActivationDescriptor::m_Function, armnn::Optimize(), options, and IOutputSlot::SetTensorInfo().

224 {
225  using namespace armnn;
226 
227  // Create runtime in which test will run
230 
231  // Builds up the structure of the network.
233 
234  IConnectableLayer* input = net->AddInputLayer(0);
235 
236  // ReLu1
237  ActivationDescriptor activation1Descriptor;
238  activation1Descriptor.m_Function = ActivationFunction::BoundedReLu;
239  activation1Descriptor.m_A = 1.f;
240  activation1Descriptor.m_B = -1.f;
241  IConnectableLayer* activation1 = net->AddActivationLayer(activation1Descriptor);
242 
243  // ReLu6
244  ActivationDescriptor activation2Descriptor;
245  activation2Descriptor.m_Function = ActivationFunction::BoundedReLu;
246  activation2Descriptor.m_A = 6.0f;
247  IConnectableLayer* activation2 = net->AddActivationLayer(activation2Descriptor);
248 
249  // BoundedReLu(min=2, max=5)
250  ActivationDescriptor activation3Descriptor;
251  activation3Descriptor.m_Function = ActivationFunction::BoundedReLu;
252  activation3Descriptor.m_A = 5.0f;
253  activation3Descriptor.m_B = 2.0f;
254  IConnectableLayer* activation3 = net->AddActivationLayer(activation3Descriptor);
255 
256  IConnectableLayer* output1 = net->AddOutputLayer(0);
257  IConnectableLayer* output2 = net->AddOutputLayer(1);
258  IConnectableLayer* output3 = net->AddOutputLayer(2);
259 
260  input->GetOutputSlot(0).Connect(activation1->GetInputSlot(0));
261  input->GetOutputSlot(0).Connect(activation2->GetInputSlot(0));
262  input->GetOutputSlot(0).Connect(activation3->GetInputSlot(0));
263 
264  activation1->GetOutputSlot(0).Connect(output1->GetInputSlot(0));
265  activation2->GetOutputSlot(0).Connect(output2->GetInputSlot(0));
266  activation3->GetOutputSlot(0).Connect(output3->GetInputSlot(0));
267 
268  // Sets the tensors in the network.
269  TensorInfo tensorInfo(TensorShape({ 10 }), DataType::Float32);
270  input->GetOutputSlot(0).SetTensorInfo(tensorInfo);
271  activation1->GetOutputSlot(0).SetTensorInfo(tensorInfo);
272  activation2->GetOutputSlot(0).SetTensorInfo(tensorInfo);
273  activation3->GetOutputSlot(0).SetTensorInfo(tensorInfo);
274 
275  // optimize the network
276  IOptimizedNetworkPtr optNet = Optimize(*net, defaultBackends, runtime->GetDeviceSpec());
277 
278  // Loads it into the runtime.
279  NetworkId netId;
280  runtime->LoadNetwork(netId, std::move(optNet));
281 
282  // Creates structures for input & output.
283  const std::vector<float> inputData{ 3.f, 5.f, 2.f, 3.f, 7.f, 0.f, -2.f, -1.f, 3.f, 3.f };
284 
285  std::vector<float> output1Data(inputData.size());
286  std::vector<float> output2Data(inputData.size());
287  std::vector<float> output3Data(inputData.size());
288 
289  InputTensors inputTensors
290  {
291  {0,armnn::ConstTensor(runtime->GetInputTensorInfo(netId, 0), inputData.data())}
292  };
293  OutputTensors outputTensors
294  {
295  {0,armnn::Tensor(runtime->GetOutputTensorInfo(netId, 0), output1Data.data())},
296  {1,armnn::Tensor(runtime->GetOutputTensorInfo(netId, 1), output2Data.data())},
297  {2,armnn::Tensor(runtime->GetOutputTensorInfo(netId, 2), output3Data.data())}
298  };
299 
300  // Does the inference.
301  runtime->EnqueueWorkload(netId, inputTensors, outputTensors);
302 
303  // Checks the results.
304  BOOST_TEST(output1Data == std::vector<float>({ 1.f, 1.f, 1.f, 1.f, 1.f, 0.f, -1.f, -1.f, 1.f, 1.f })); // ReLu1
305  BOOST_TEST(output2Data == std::vector<float>({ 3.f, 5.f, 2.f, 3.f, 6.f, 0.f, 0.f, 0.f, 3.f, 3.f })); // ReLu6
306  BOOST_TEST(output3Data == std::vector<float>({ 3.f, 5.f, 2.f, 3.f, 5.f, 2.f, 2.f, 2.f, 3.f, 3.f })); // [2, 5]
307 }
static IRuntimePtr Create(const CreationOptions &options)
Definition: Runtime.cpp:32
Interface for a layer that is connectable to other layers via InputSlots and OutputSlots.
Definition: INetwork.hpp:61
std::vector< armnn::BackendId > defaultBackends
std::unique_ptr< IRuntime, void(*)(IRuntime *runtime)> IRuntimePtr
Definition: IRuntime.hpp:24
std::vector< std::pair< LayerBindingId, class ConstTensor > > InputTensors
Definition: Tensor.hpp:225
int NetworkId
Definition: IRuntime.hpp:19
Copyright (c) 2020 ARM Limited.
virtual void SetTensorInfo(const TensorInfo &tensorInfo)=0
A tensor defined by a TensorInfo (shape and data type) and a mutable backing store.
Definition: Tensor.hpp:191
IOptimizedNetworkPtr Optimize(const INetwork &network, const std::vector< BackendId > &backendPreferences, const IDeviceSpec &deviceSpec, const OptimizerOptions &options=OptimizerOptions(), Optional< std::vector< std::string > &> messages=EmptyOptional())
Create an optimized version of the network.
Definition: Network.cpp:890
A tensor defined by a TensorInfo (shape and data type) and an immutable backing store.
Definition: Tensor.hpp:199
std::vector< std::pair< LayerBindingId, class Tensor > > OutputTensors
Definition: Tensor.hpp:226
std::unique_ptr< IOptimizedNetwork, void(*)(IOptimizedNetwork *network)> IOptimizedNetworkPtr
Definition: INetwork.hpp:566
An ActivationDescriptor for the ActivationLayer.
Definition: Descriptors.hpp:20
min(a, max(b, input)) ReLu1 & ReLu6.
float m_A
Alpha upper bound value used by the activation functions. (BoundedReLu, Linear, TanH).
Definition: Descriptors.hpp:37
virtual const IInputSlot & GetInputSlot(unsigned int index) const =0
Get a const input slot handle by slot index.
virtual const IOutputSlot & GetOutputSlot(unsigned int index) const =0
Get the const output slot handle by slot index.
std::unique_ptr< INetwork, void(*)(INetwork *network)> INetworkPtr
Definition: INetwork.hpp:101
virtual int Connect(IInputSlot &destination)=0
armnn::Runtime::CreationOptions::ExternalProfilingOptions options
float m_B
Beta lower bound value used by the activation functions. (BoundedReLu, Linear, TanH).
Definition: Descriptors.hpp:39
static INetworkPtr Create()
Definition: Network.cpp:49
ActivationFunction m_Function
The activation function to use (Sigmoid, TanH, Linear, ReLu, BoundedReLu, SoftReLu, LeakyReLu, Abs, Sqrt, Square).
Definition: Descriptors.hpp:35

◆ BOOST_AUTO_TEST_CASE() [9/136]

BOOST_AUTO_TEST_CASE ( TrivialMin  )

Definition at line 309 of file RefEndToEndTests.cpp.

References IOutputSlot::Connect(), INetwork::Create(), IRuntime::Create(), defaultBackends, armnn::Float32, IConnectableLayer::GetInputSlot(), IConnectableLayer::GetOutputSlot(), armnn::Optimize(), options, and IOutputSlot::SetTensorInfo().

310 {
311  using namespace armnn;
312 
313  // Create runtime in which test will run
316 
317  // Builds up the structure of the network.
319 
320  IConnectableLayer* input1 = net->AddInputLayer(0);
321  IConnectableLayer* input2 = net->AddInputLayer(1);
322  IConnectableLayer* min = net->AddMinimumLayer();
323  IConnectableLayer* output = net->AddOutputLayer(0);
324 
325  input1->GetOutputSlot(0).Connect(min->GetInputSlot(0));
326  input2->GetOutputSlot(0).Connect(min->GetInputSlot(1));
327  min->GetOutputSlot(0).Connect(output->GetInputSlot(0));
328 
329  // Sets the tensors in the network.
330  TensorInfo tensorInfo(TensorShape({1, 1, 1, 4}), DataType::Float32);
331  input1->GetOutputSlot(0).SetTensorInfo(tensorInfo);
332  input2->GetOutputSlot(0).SetTensorInfo(tensorInfo);
333  min->GetOutputSlot(0).SetTensorInfo(tensorInfo);
334 
335  // optimize the network
336  IOptimizedNetworkPtr optNet = Optimize(*net, defaultBackends, runtime->GetDeviceSpec());
337 
338  // Loads it into the runtime.
339  NetworkId netId;
340  runtime->LoadNetwork(netId, std::move(optNet));
341 
342  // Creates structures for input & output - matching android nn test.
343  std::vector<float> input1Data
344  {
345  1.0f, 2.0f, 3.0f, 4.0f
346  };
347  std::vector<float> input2Data
348  {
349  2.0f, 1.0f, 5.0f, 2.0f
350  };
351  std::vector<float> outputData(4);
352 
353  InputTensors inputTensors
354  {
355  {0,armnn::ConstTensor(runtime->GetInputTensorInfo(netId, 0), input1Data.data())},
356  {1,armnn::ConstTensor(runtime->GetInputTensorInfo(netId, 0), input2Data.data())}
357  };
358  OutputTensors outputTensors
359  {
360  {0,armnn::Tensor(runtime->GetOutputTensorInfo(netId, 0), outputData.data())}
361  };
362 
363  // Does the inference.
364  runtime->EnqueueWorkload(netId, inputTensors, outputTensors);
365 
366  // Checks the results
367  BOOST_TEST(outputData[0] == 1);
368  BOOST_TEST(outputData[1] == 1);
369  BOOST_TEST(outputData[2] == 3);
370  BOOST_TEST(outputData[3] == 2);
371 }
static IRuntimePtr Create(const CreationOptions &options)
Definition: Runtime.cpp:32
Interface for a layer that is connectable to other layers via InputSlots and OutputSlots.
Definition: INetwork.hpp:61
std::vector< armnn::BackendId > defaultBackends
std::unique_ptr< IRuntime, void(*)(IRuntime *runtime)> IRuntimePtr
Definition: IRuntime.hpp:24
std::vector< std::pair< LayerBindingId, class ConstTensor > > InputTensors
Definition: Tensor.hpp:225
int NetworkId
Definition: IRuntime.hpp:19
Copyright (c) 2020 ARM Limited.
virtual void SetTensorInfo(const TensorInfo &tensorInfo)=0
A tensor defined by a TensorInfo (shape and data type) and a mutable backing store.
Definition: Tensor.hpp:191
IOptimizedNetworkPtr Optimize(const INetwork &network, const std::vector< BackendId > &backendPreferences, const IDeviceSpec &deviceSpec, const OptimizerOptions &options=OptimizerOptions(), Optional< std::vector< std::string > &> messages=EmptyOptional())
Create an optimized version of the network.
Definition: Network.cpp:890
A tensor defined by a TensorInfo (shape and data type) and an immutable backing store.
Definition: Tensor.hpp:199
std::vector< std::pair< LayerBindingId, class Tensor > > OutputTensors
Definition: Tensor.hpp:226
std::unique_ptr< IOptimizedNetwork, void(*)(IOptimizedNetwork *network)> IOptimizedNetworkPtr
Definition: INetwork.hpp:566
virtual const IInputSlot & GetInputSlot(unsigned int index) const =0
Get a const input slot handle by slot index.
virtual const IOutputSlot & GetOutputSlot(unsigned int index) const =0
Get the const output slot handle by slot index.
std::unique_ptr< INetwork, void(*)(INetwork *network)> INetworkPtr
Definition: INetwork.hpp:101
virtual int Connect(IInputSlot &destination)=0
armnn::Runtime::CreationOptions::ExternalProfilingOptions options
static INetworkPtr Create()
Definition: Network.cpp:49

◆ BOOST_AUTO_TEST_CASE() [10/136]

BOOST_AUTO_TEST_CASE ( RefEqualSimpleEndToEndTest  )

Definition at line 373 of file RefEndToEndTests.cpp.

References defaultBackends, and armnn::Equal.

374 {
375  const std::vector<uint8_t> expectedOutput({ 1, 1, 1, 1, 0, 0, 0, 0,
376  0, 0, 0, 0, 1, 1, 1, 1 });
377 
378  ComparisonSimpleEndToEnd<armnn::DataType::Float32>(defaultBackends,
379  ComparisonOperation::Equal,
380  expectedOutput);
381 }
std::vector< armnn::BackendId > defaultBackends

◆ BOOST_AUTO_TEST_CASE() [11/136]

BOOST_AUTO_TEST_CASE ( RefGreaterSimpleEndToEndTest  )

Definition at line 383 of file RefEndToEndTests.cpp.

References defaultBackends, and armnn::Greater.

384 {
385  const std::vector<uint8_t> expectedOutput({ 0, 0, 0, 0, 1, 1, 1, 1,
386  0, 0, 0, 0, 0, 0, 0, 0 });
387 
388  ComparisonSimpleEndToEnd<armnn::DataType::Float32>(defaultBackends,
389  ComparisonOperation::Greater,
390  expectedOutput);
391 }
std::vector< armnn::BackendId > defaultBackends

◆ BOOST_AUTO_TEST_CASE() [12/136]

BOOST_AUTO_TEST_CASE ( RefEqualSimpleEndToEndUint8Test  )

Definition at line 393 of file RefEndToEndTests.cpp.

References defaultBackends, and armnn::Equal.

394 {
395  const std::vector<uint8_t> expectedOutput({ 1, 1, 1, 1, 0, 0, 0, 0,
396  0, 0, 0, 0, 1, 1, 1, 1 });
397 
398  ComparisonSimpleEndToEnd<armnn::DataType::QAsymmU8>(defaultBackends,
399  ComparisonOperation::Equal,
400  expectedOutput);
401 }
std::vector< armnn::BackendId > defaultBackends

◆ BOOST_AUTO_TEST_CASE() [13/136]

BOOST_AUTO_TEST_CASE ( RefGreaterSimpleEndToEndUint8Test  )

Definition at line 403 of file RefEndToEndTests.cpp.

References defaultBackends, and armnn::Greater.

404 {
405  const std::vector<uint8_t> expectedOutput({ 0, 0, 0, 0, 1, 1, 1, 1,
406  0, 0, 0, 0, 0, 0, 0, 0 });
407 
408  ComparisonSimpleEndToEnd<armnn::DataType::QAsymmU8>(defaultBackends,
409  ComparisonOperation::Greater,
410  expectedOutput);
411 }
std::vector< armnn::BackendId > defaultBackends

◆ BOOST_AUTO_TEST_CASE() [14/136]

BOOST_AUTO_TEST_CASE ( RefEqualBroadcastEndToEndTest  )

Definition at line 413 of file RefEndToEndTests.cpp.

References defaultBackends, and armnn::Equal.

414 {
415  const std::vector<uint8_t> expectedOutput({ 1, 0, 1, 1, 0, 0,
416  0, 0, 0, 0, 0, 0 });
417 
418  ComparisonBroadcastEndToEnd<armnn::DataType::Float32>(defaultBackends,
419  ComparisonOperation::Equal,
420  expectedOutput);
421 }
std::vector< armnn::BackendId > defaultBackends

◆ BOOST_AUTO_TEST_CASE() [15/136]

BOOST_AUTO_TEST_CASE ( RefGreaterBroadcastEndToEndTest  )

Definition at line 423 of file RefEndToEndTests.cpp.

References defaultBackends, and armnn::Greater.

424 {
425  const std::vector<uint8_t> expectedOutput({ 0, 1, 0, 0, 0, 1,
426  1, 1, 1, 1, 1, 1 });
427 
428  ComparisonBroadcastEndToEnd<armnn::DataType::Float32>(defaultBackends,
429  ComparisonOperation::Greater,
430  expectedOutput);
431 }
std::vector< armnn::BackendId > defaultBackends

◆ BOOST_AUTO_TEST_CASE() [16/136]

BOOST_AUTO_TEST_CASE ( RefEqualBroadcastEndToEndUint8Test  )

Definition at line 433 of file RefEndToEndTests.cpp.

References defaultBackends, and armnn::Equal.

434 {
435  const std::vector<uint8_t > expectedOutput({ 1, 0, 1, 1, 0, 0,
436  0, 0, 0, 0, 0, 0 });
437 
438  ComparisonBroadcastEndToEnd<armnn::DataType::QAsymmU8>(defaultBackends,
439  ComparisonOperation::Equal,
440  expectedOutput);
441 }
std::vector< armnn::BackendId > defaultBackends

◆ BOOST_AUTO_TEST_CASE() [17/136]

BOOST_AUTO_TEST_CASE ( RefGreaterBroadcastEndToEndUint8Test  )

Definition at line 443 of file RefEndToEndTests.cpp.

References defaultBackends, and armnn::Greater.

444 {
445  const std::vector<uint8_t> expectedOutput({ 0, 1, 0, 0, 0, 1,
446  1, 1, 1, 1, 1, 1 });
447 
448  ComparisonBroadcastEndToEnd<armnn::DataType::QAsymmU8>(defaultBackends,
449  ComparisonOperation::Greater,
450  expectedOutput);
451 }
std::vector< armnn::BackendId > defaultBackends

◆ BOOST_AUTO_TEST_CASE() [18/136]

BOOST_AUTO_TEST_CASE ( RefBatchToSpaceNdEndToEndFloat32NHWCTest  )

Definition at line 453 of file RefEndToEndTests.cpp.

References defaultBackends, and armnn::NHWC.

454 {
455  BatchToSpaceNdEndToEnd<armnn::DataType::Float32>(defaultBackends, armnn::DataLayout::NHWC);
456 }
std::vector< armnn::BackendId > defaultBackends

◆ BOOST_AUTO_TEST_CASE() [19/136]

BOOST_AUTO_TEST_CASE ( RefBatchToSpaceNdEndToEndUint8NHWCTest  )

Definition at line 458 of file RefEndToEndTests.cpp.

References defaultBackends, and armnn::NHWC.

459 {
460  BatchToSpaceNdEndToEnd<armnn::DataType::QAsymmU8>(defaultBackends, armnn::DataLayout::NHWC);
461 }
std::vector< armnn::BackendId > defaultBackends

◆ BOOST_AUTO_TEST_CASE() [20/136]

BOOST_AUTO_TEST_CASE ( RefBatchToSpaceNdEndToEndQSymm16NHWCTest  )

Definition at line 463 of file RefEndToEndTests.cpp.

References defaultBackends, and armnn::NHWC.

464 {
465  BatchToSpaceNdEndToEnd<armnn::DataType::QSymmS16>(defaultBackends, armnn::DataLayout::NHWC);
466 }
std::vector< armnn::BackendId > defaultBackends

◆ BOOST_AUTO_TEST_CASE() [21/136]

BOOST_AUTO_TEST_CASE ( RefBatchToSpaceNdEndToEndFloat32NCHWTest  )

Definition at line 468 of file RefEndToEndTests.cpp.

References defaultBackends, and armnn::NCHW.

469 {
470  BatchToSpaceNdEndToEnd<armnn::DataType::Float32>(defaultBackends, armnn::DataLayout::NCHW);
471 }
std::vector< armnn::BackendId > defaultBackends

◆ BOOST_AUTO_TEST_CASE() [22/136]

BOOST_AUTO_TEST_CASE ( RefBatchToSpaceNdEndToEndUint8NCHWTest  )

Definition at line 473 of file RefEndToEndTests.cpp.

References defaultBackends, and armnn::NCHW.

474 {
475  BatchToSpaceNdEndToEnd<armnn::DataType::QAsymmU8>(defaultBackends, armnn::DataLayout::NCHW);
476 }
std::vector< armnn::BackendId > defaultBackends

◆ BOOST_AUTO_TEST_CASE() [23/136]

BOOST_AUTO_TEST_CASE ( RefBatchToSpaceNdEndToEndQSymm16NCHWTest  )

Definition at line 478 of file RefEndToEndTests.cpp.

References defaultBackends, and armnn::NCHW.

479 {
480  BatchToSpaceNdEndToEnd<armnn::DataType::QSymmS16>(defaultBackends, armnn::DataLayout::NCHW);
481 }
std::vector< armnn::BackendId > defaultBackends

◆ BOOST_AUTO_TEST_CASE() [24/136]

BOOST_AUTO_TEST_CASE ( RefBatchToSpaceNdEndToEndComplexFloat32NHWCTest  )

Definition at line 483 of file RefEndToEndTests.cpp.

References defaultBackends, and armnn::NHWC.

484 {
485  BatchToSpaceNdComplexEndToEnd<armnn::DataType::Float32>(defaultBackends, armnn::DataLayout::NHWC);
486 }
std::vector< armnn::BackendId > defaultBackends

◆ BOOST_AUTO_TEST_CASE() [25/136]

BOOST_AUTO_TEST_CASE ( RefBatchToSpaceNdEndToEndComplexUint8NHWCTest  )

Definition at line 488 of file RefEndToEndTests.cpp.

References defaultBackends, and armnn::NHWC.

489 {
490  BatchToSpaceNdComplexEndToEnd<armnn::DataType::QAsymmU8>(defaultBackends, armnn::DataLayout::NHWC);
491 }
std::vector< armnn::BackendId > defaultBackends

◆ BOOST_AUTO_TEST_CASE() [26/136]

BOOST_AUTO_TEST_CASE ( RefBatchToSpaceNdEndToEndComplexQSymm16NHWCTest  )

Definition at line 493 of file RefEndToEndTests.cpp.

References defaultBackends, and armnn::NHWC.

494 {
495  BatchToSpaceNdComplexEndToEnd<armnn::DataType::QSymmS16>(defaultBackends, armnn::DataLayout::NHWC);
496 }
std::vector< armnn::BackendId > defaultBackends

◆ BOOST_AUTO_TEST_CASE() [27/136]

BOOST_AUTO_TEST_CASE ( RefBatchToSpaceNdEndToEndComplexFloat32NCHWTest  )

Definition at line 498 of file RefEndToEndTests.cpp.

References defaultBackends, and armnn::NCHW.

499 {
500  BatchToSpaceNdComplexEndToEnd<armnn::DataType::Float32>(defaultBackends, armnn::DataLayout::NCHW);
501 }
std::vector< armnn::BackendId > defaultBackends

◆ BOOST_AUTO_TEST_CASE() [28/136]

BOOST_AUTO_TEST_CASE ( RefBatchToSpaceNdEndToEndComplexUint8NCHWTest  )

Definition at line 503 of file RefEndToEndTests.cpp.

References defaultBackends, and armnn::NCHW.

504 {
505  BatchToSpaceNdComplexEndToEnd<armnn::DataType::QAsymmU8>(defaultBackends, armnn::DataLayout::NCHW);
506 }
std::vector< armnn::BackendId > defaultBackends

◆ BOOST_AUTO_TEST_CASE() [29/136]

BOOST_AUTO_TEST_CASE ( RefBatchToSpaceNdEndToEndComplexQSymm16NCHWTest  )

Definition at line 508 of file RefEndToEndTests.cpp.

References defaultBackends, and armnn::NCHW.

509 {
510  BatchToSpaceNdComplexEndToEnd<armnn::DataType::QSymmS16>(defaultBackends, armnn::DataLayout::NCHW);
511 }
std::vector< armnn::BackendId > defaultBackends

◆ BOOST_AUTO_TEST_CASE() [30/136]

BOOST_AUTO_TEST_CASE ( RefConcatEndToEndDim0Test  )

Definition at line 513 of file RefEndToEndTests.cpp.

References defaultBackends.

514 {
515  ConcatDim0EndToEnd<armnn::DataType::Float32>(defaultBackends);
516 }
std::vector< armnn::BackendId > defaultBackends

◆ BOOST_AUTO_TEST_CASE() [31/136]

BOOST_AUTO_TEST_CASE ( RefConcatEndToEndDim0Uint8Test  )

Definition at line 518 of file RefEndToEndTests.cpp.

References defaultBackends.

519 {
520  ConcatDim0EndToEnd<armnn::DataType::QAsymmU8>(defaultBackends);
521 }
std::vector< armnn::BackendId > defaultBackends

◆ BOOST_AUTO_TEST_CASE() [32/136]

BOOST_AUTO_TEST_CASE ( RefConcatEndToEndDim1Test  )

Definition at line 523 of file RefEndToEndTests.cpp.

References defaultBackends.

524 {
525  ConcatDim1EndToEnd<armnn::DataType::Float32>(defaultBackends);
526 }
std::vector< armnn::BackendId > defaultBackends

◆ BOOST_AUTO_TEST_CASE() [33/136]

BOOST_AUTO_TEST_CASE ( RefConcatEndToEndDim1Uint8Test  )

Definition at line 528 of file RefEndToEndTests.cpp.

References defaultBackends.

529 {
530  ConcatDim1EndToEnd<armnn::DataType::QAsymmU8>(defaultBackends);
531 }
std::vector< armnn::BackendId > defaultBackends

◆ BOOST_AUTO_TEST_CASE() [34/136]

BOOST_AUTO_TEST_CASE ( RefConcatEndToEndDim2Test  )

Definition at line 533 of file RefEndToEndTests.cpp.

References defaultBackends.

534 {
535  ConcatDim2EndToEnd<armnn::DataType::Float32>(defaultBackends);
536 }
std::vector< armnn::BackendId > defaultBackends

◆ BOOST_AUTO_TEST_CASE() [35/136]

BOOST_AUTO_TEST_CASE ( RefConcatEndToEndDim2Uint8Test  )

Definition at line 538 of file RefEndToEndTests.cpp.

References defaultBackends.

539 {
540  ConcatDim2EndToEnd<armnn::DataType::QAsymmU8>(defaultBackends);
541 }
std::vector< armnn::BackendId > defaultBackends

◆ BOOST_AUTO_TEST_CASE() [36/136]

BOOST_AUTO_TEST_CASE ( RefConcatEndToEndDim3Test  )

Definition at line 543 of file RefEndToEndTests.cpp.

References defaultBackends.

544 {
545  ConcatDim3EndToEnd<armnn::DataType::Float32>(defaultBackends);
546 }
std::vector< armnn::BackendId > defaultBackends

◆ BOOST_AUTO_TEST_CASE() [37/136]

BOOST_AUTO_TEST_CASE ( RefConcatEndToEndDim3Uint8Test  )

Definition at line 548 of file RefEndToEndTests.cpp.

References defaultBackends.

549 {
550  ConcatDim3EndToEnd<armnn::DataType::QAsymmU8>(defaultBackends);
551 }
std::vector< armnn::BackendId > defaultBackends

◆ BOOST_AUTO_TEST_CASE() [38/136]

BOOST_AUTO_TEST_CASE ( RefGatherFloatTest  )

Definition at line 553 of file RefEndToEndTests.cpp.

References defaultBackends.

554 {
555  GatherEndToEnd<armnn::DataType::Float32>(defaultBackends);
556 }
std::vector< armnn::BackendId > defaultBackends

◆ BOOST_AUTO_TEST_CASE() [39/136]

BOOST_AUTO_TEST_CASE ( RefGatherUint8Test  )

Definition at line 558 of file RefEndToEndTests.cpp.

References defaultBackends.

559 {
560  GatherEndToEnd<armnn::DataType::QAsymmU8>(defaultBackends);
561 }
std::vector< armnn::BackendId > defaultBackends

◆ BOOST_AUTO_TEST_CASE() [40/136]

BOOST_AUTO_TEST_CASE ( RefGatherInt16Test  )

Definition at line 563 of file RefEndToEndTests.cpp.

References defaultBackends.

564 {
565  GatherEndToEnd<armnn::DataType::QSymmS16>(defaultBackends);
566 }
std::vector< armnn::BackendId > defaultBackends

◆ BOOST_AUTO_TEST_CASE() [41/136]

BOOST_AUTO_TEST_CASE ( RefGatherMultiDimFloatTest  )

Definition at line 568 of file RefEndToEndTests.cpp.

References defaultBackends.

569 {
570  GatherMultiDimEndToEnd<armnn::DataType::Float32>(defaultBackends);
571 }
std::vector< armnn::BackendId > defaultBackends

◆ BOOST_AUTO_TEST_CASE() [42/136]

BOOST_AUTO_TEST_CASE ( RefGatherMultiDimUint8Test  )

Definition at line 573 of file RefEndToEndTests.cpp.

References defaultBackends.

574 {
575  GatherMultiDimEndToEnd<armnn::DataType::QAsymmU8>(defaultBackends);
576 }
std::vector< armnn::BackendId > defaultBackends

◆ BOOST_AUTO_TEST_CASE() [43/136]

BOOST_AUTO_TEST_CASE ( RefGatherMultiDimInt16Test  )

Definition at line 578 of file RefEndToEndTests.cpp.

References defaultBackends.

579 {
580  GatherMultiDimEndToEnd<armnn::DataType::QSymmS16>(defaultBackends);
581 }
std::vector< armnn::BackendId > defaultBackends

◆ BOOST_AUTO_TEST_CASE() [44/136]

BOOST_AUTO_TEST_CASE ( DephtToSpaceEndToEndNchwFloat32  )

Definition at line 584 of file RefEndToEndTests.cpp.

References defaultBackends, and armnn::NCHW.

585 {
586  DepthToSpaceEndToEnd<armnn::DataType::Float32>(defaultBackends, armnn::DataLayout::NCHW);
587 }
std::vector< armnn::BackendId > defaultBackends

◆ BOOST_AUTO_TEST_CASE() [45/136]

BOOST_AUTO_TEST_CASE ( DephtToSpaceEndToEndNchwFloat16  )

Definition at line 589 of file RefEndToEndTests.cpp.

References defaultBackends, and armnn::NCHW.

590 {
591  DepthToSpaceEndToEnd<armnn::DataType::Float16>(defaultBackends, armnn::DataLayout::NCHW);
592 }
std::vector< armnn::BackendId > defaultBackends

◆ BOOST_AUTO_TEST_CASE() [46/136]

BOOST_AUTO_TEST_CASE ( DephtToSpaceEndToEndNchwUint8  )

Definition at line 594 of file RefEndToEndTests.cpp.

References defaultBackends, and armnn::NCHW.

595 {
596  DepthToSpaceEndToEnd<armnn::DataType::QAsymmU8>(defaultBackends, armnn::DataLayout::NCHW);
597 }
std::vector< armnn::BackendId > defaultBackends

◆ BOOST_AUTO_TEST_CASE() [47/136]

BOOST_AUTO_TEST_CASE ( DephtToSpaceEndToEndNchwInt16  )

Definition at line 599 of file RefEndToEndTests.cpp.

References defaultBackends, and armnn::NCHW.

600 {
601  DepthToSpaceEndToEnd<armnn::DataType::QSymmS16>(defaultBackends, armnn::DataLayout::NCHW);
602 }
std::vector< armnn::BackendId > defaultBackends

◆ BOOST_AUTO_TEST_CASE() [48/136]

BOOST_AUTO_TEST_CASE ( DephtToSpaceEndToEndNhwcFloat32  )

Definition at line 604 of file RefEndToEndTests.cpp.

References defaultBackends, and armnn::NHWC.

605 {
606  DepthToSpaceEndToEnd<armnn::DataType::Float32>(defaultBackends, armnn::DataLayout::NHWC);
607 }
std::vector< armnn::BackendId > defaultBackends

◆ BOOST_AUTO_TEST_CASE() [49/136]

BOOST_AUTO_TEST_CASE ( DephtToSpaceEndToEndNhwcFloat16  )

Definition at line 609 of file RefEndToEndTests.cpp.

References defaultBackends, and armnn::NHWC.

610 {
611  DepthToSpaceEndToEnd<armnn::DataType::Float16>(defaultBackends, armnn::DataLayout::NHWC);
612 }
std::vector< armnn::BackendId > defaultBackends

◆ BOOST_AUTO_TEST_CASE() [50/136]

BOOST_AUTO_TEST_CASE ( DephtToSpaceEndToEndNhwcUint8  )

Definition at line 614 of file RefEndToEndTests.cpp.

References defaultBackends, and armnn::NHWC.

615 {
616  DepthToSpaceEndToEnd<armnn::DataType::QAsymmU8>(defaultBackends, armnn::DataLayout::NHWC);
617 }
std::vector< armnn::BackendId > defaultBackends

◆ BOOST_AUTO_TEST_CASE() [51/136]

BOOST_AUTO_TEST_CASE ( DephtToSpaceEndToEndNhwcInt16  )

Definition at line 619 of file RefEndToEndTests.cpp.

References defaultBackends, and armnn::NHWC.

620 {
621  DepthToSpaceEndToEnd<armnn::DataType::QSymmS16>(defaultBackends, armnn::DataLayout::NHWC);
622 }
std::vector< armnn::BackendId > defaultBackends

◆ BOOST_AUTO_TEST_CASE() [52/136]

BOOST_AUTO_TEST_CASE ( DequantizeEndToEndSimpleTest  )

Definition at line 625 of file RefEndToEndTests.cpp.

References defaultBackends.

626 {
627  DequantizeEndToEndSimple<armnn::DataType::QAsymmU8>(defaultBackends);
628 }
std::vector< armnn::BackendId > defaultBackends

◆ BOOST_AUTO_TEST_CASE() [53/136]

BOOST_AUTO_TEST_CASE ( DequantizeEndToEndOffsetTest  )

Definition at line 630 of file RefEndToEndTests.cpp.

References defaultBackends.

631 {
632  DequantizeEndToEndOffset<armnn::DataType::QAsymmU8>(defaultBackends);
633 }
std::vector< armnn::BackendId > defaultBackends

◆ BOOST_AUTO_TEST_CASE() [54/136]

BOOST_AUTO_TEST_CASE ( DequantizeEndToEndSimpleInt16Test  )

Definition at line 635 of file RefEndToEndTests.cpp.

References defaultBackends.

636 {
637  DequantizeEndToEndSimple<armnn::DataType::QSymmS16>(defaultBackends);
638 }
std::vector< armnn::BackendId > defaultBackends

◆ BOOST_AUTO_TEST_CASE() [55/136]

BOOST_AUTO_TEST_CASE ( DequantizeEndToEndOffsetInt16Test  )

Definition at line 640 of file RefEndToEndTests.cpp.

References defaultBackends.

641 {
642  DequantizeEndToEndOffset<armnn::DataType::QSymmS16>(defaultBackends);
643 }
std::vector< armnn::BackendId > defaultBackends

◆ BOOST_AUTO_TEST_CASE() [56/136]

BOOST_AUTO_TEST_CASE ( RefDetectionPostProcessRegularNmsTest  )

Definition at line 645 of file RefEndToEndTests.cpp.

References anchors(), boxEncodings(), defaultBackends, and scores().

646 {
647  std::vector<float> boxEncodings({
648  0.0f, 0.0f, 0.0f, 0.0f,
649  0.0f, 1.0f, 0.0f, 0.0f,
650  0.0f, -1.0f, 0.0f, 0.0f,
651  0.0f, 0.0f, 0.0f, 0.0f,
652  0.0f, 1.0f, 0.0f, 0.0f,
653  0.0f, 0.0f, 0.0f, 0.0f
654  });
655  std::vector<float> scores({
656  0.0f, 0.9f, 0.8f,
657  0.0f, 0.75f, 0.72f,
658  0.0f, 0.6f, 0.5f,
659  0.0f, 0.93f, 0.95f,
660  0.0f, 0.5f, 0.4f,
661  0.0f, 0.3f, 0.2f
662  });
663  std::vector<float> anchors({
664  0.5f, 0.5f, 1.0f, 1.0f,
665  0.5f, 0.5f, 1.0f, 1.0f,
666  0.5f, 0.5f, 1.0f, 1.0f,
667  0.5f, 10.5f, 1.0f, 1.0f,
668  0.5f, 10.5f, 1.0f, 1.0f,
669  0.5f, 100.5f, 1.0f, 1.0f
670  });
671  DetectionPostProcessRegularNmsEndToEnd<armnn::DataType::Float32>(defaultBackends, boxEncodings, scores, anchors);
672 }
std::vector< armnn::BackendId > defaultBackends
std::vector< float > boxEncodings({ 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 1.0f, 0.0f, 0.0f, 0.0f, -1.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 1.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f })
std::vector< float > scores({ 0.0f, 0.9f, 0.8f, 0.0f, 0.75f, 0.72f, 0.0f, 0.6f, 0.5f, 0.0f, 0.93f, 0.95f, 0.0f, 0.5f, 0.4f, 0.0f, 0.3f, 0.2f })
std::vector< float > anchors({ 0.5f, 0.5f, 1.0f, 1.0f, 0.5f, 0.5f, 1.0f, 1.0f, 0.5f, 0.5f, 1.0f, 1.0f, 0.5f, 10.5f, 1.0f, 1.0f, 0.5f, 10.5f, 1.0f, 1.0f, 0.5f, 100.5f, 1.0f, 1.0f })

◆ BOOST_AUTO_TEST_CASE() [57/136]

BOOST_AUTO_TEST_CASE ( RefDetectionPostProcessRegularNmsUint8Test  )

Definition at line 682 of file RefEndToEndTests.cpp.

References anchors(), anchorsInfo, boxEncodings(), defaultBackends, armnn::Float32, qAnchors(), qBoxEncodings(), qScores(), QuantizeData(), scores(), scoresInfo, TensorInfo::SetQuantizationOffset(), and TensorInfo::SetQuantizationScale().

683 {
684  armnn::TensorInfo boxEncodingsInfo({ 1, 6, 4 }, armnn::DataType::Float32);
687 
688  boxEncodingsInfo.SetQuantizationScale(1.0f);
689  boxEncodingsInfo.SetQuantizationOffset(1);
694 
695  std::vector<float> boxEncodings({
696  0.0f, 0.0f, 0.0f, 0.0f,
697  0.0f, 1.0f, 0.0f, 0.0f,
698  0.0f, -1.0f, 0.0f, 0.0f,
699  0.0f, 0.0f, 0.0f, 0.0f,
700  0.0f, 1.0f, 0.0f, 0.0f,
701  0.0f, 0.0f, 0.0f, 0.0f
702  });
703  std::vector<float> scores({
704  0.0f, 0.9f, 0.8f,
705  0.0f, 0.75f, 0.72f,
706  0.0f, 0.6f, 0.5f,
707  0.0f, 0.93f, 0.95f,
708  0.0f, 0.5f, 0.4f,
709  0.0f, 0.3f, 0.2f
710  });
711  std::vector<float> anchors({
712  0.5f, 0.5f, 1.0f, 1.0f,
713  0.5f, 0.5f, 1.0f, 1.0f,
714  0.5f, 0.5f, 1.0f, 1.0f,
715  0.5f, 10.5f, 1.0f, 1.0f,
716  0.5f, 10.5f, 1.0f, 1.0f,
717  0.5f, 100.5f, 1.0f, 1.0f
718  });
719 
720  std::vector<uint8_t> qBoxEncodings(boxEncodings.size(), 0);
721  std::vector<uint8_t> qScores(scores.size(), 0);
722  std::vector<uint8_t> qAnchors(anchors.size(), 0);
723  QuantizeData(qBoxEncodings.data(), boxEncodings.data(), boxEncodingsInfo);
724  QuantizeData(qScores.data(), scores.data(), scoresInfo);
725  QuantizeData(qAnchors.data(), anchors.data(), anchorsInfo);
726  DetectionPostProcessRegularNmsEndToEnd<armnn::DataType::QAsymmU8>(defaultBackends, qBoxEncodings,
727  qScores, qAnchors,
728  1.0f, 1, 0.01f, 0, 0.5f, 0);
729 }
std::vector< armnn::BackendId > defaultBackends
armnn::TensorInfo anchorsInfo({ 6, 4 }, armnn::DataType::Float32)
std::vector< float > boxEncodings({ 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 1.0f, 0.0f, 0.0f, 0.0f, -1.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 1.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f })
std::vector< uint8_t > qBoxEncodings(boxEncodings.size(), 0)
void SetQuantizationScale(float scale)
Definition: Tensor.cpp:259
std::vector< uint8_t > qAnchors(anchors.size(), 0)
std::vector< float > scores({ 0.0f, 0.9f, 0.8f, 0.0f, 0.75f, 0.72f, 0.0f, 0.6f, 0.5f, 0.0f, 0.93f, 0.95f, 0.0f, 0.5f, 0.4f, 0.0f, 0.3f, 0.2f })
void QuantizeData(uint8_t *quant, const float *dequant, const TensorInfo &info)
std::vector< uint8_t > qScores(scores.size(), 0)
armnn::TensorInfo scoresInfo({ 1, 6, 3 }, armnn::DataType::Float32)
void SetQuantizationOffset(int32_t offset)
Definition: Tensor.cpp:275
std::vector< float > anchors({ 0.5f, 0.5f, 1.0f, 1.0f, 0.5f, 0.5f, 1.0f, 1.0f, 0.5f, 0.5f, 1.0f, 1.0f, 0.5f, 10.5f, 1.0f, 1.0f, 0.5f, 10.5f, 1.0f, 1.0f, 0.5f, 100.5f, 1.0f, 1.0f })

◆ BOOST_AUTO_TEST_CASE() [58/136]

BOOST_AUTO_TEST_CASE ( RefDetectionPostProcessFastNmsTest  )

Definition at line 731 of file RefEndToEndTests.cpp.

References anchors(), boxEncodings(), defaultBackends, and scores().

732 {
733  std::vector<float> boxEncodings({
734  0.0f, 0.0f, 0.0f, 0.0f,
735  0.0f, 1.0f, 0.0f, 0.0f,
736  0.0f, -1.0f, 0.0f, 0.0f,
737  0.0f, 0.0f, 0.0f, 0.0f,
738  0.0f, 1.0f, 0.0f, 0.0f,
739  0.0f, 0.0f, 0.0f, 0.0f
740  });
741  std::vector<float> scores({
742  0.0f, 0.9f, 0.8f,
743  0.0f, 0.75f, 0.72f,
744  0.0f, 0.6f, 0.5f,
745  0.0f, 0.93f, 0.95f,
746  0.0f, 0.5f, 0.4f,
747  0.0f, 0.3f, 0.2f
748  });
749  std::vector<float> anchors({
750  0.5f, 0.5f, 1.0f, 1.0f,
751  0.5f, 0.5f, 1.0f, 1.0f,
752  0.5f, 0.5f, 1.0f, 1.0f,
753  0.5f, 10.5f, 1.0f, 1.0f,
754  0.5f, 10.5f, 1.0f, 1.0f,
755  0.5f, 100.5f, 1.0f, 1.0f
756  });
757  DetectionPostProcessFastNmsEndToEnd<armnn::DataType::Float32>(defaultBackends, boxEncodings, scores, anchors);
758 }
std::vector< armnn::BackendId > defaultBackends
std::vector< float > boxEncodings({ 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 1.0f, 0.0f, 0.0f, 0.0f, -1.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 1.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f })
std::vector< float > scores({ 0.0f, 0.9f, 0.8f, 0.0f, 0.75f, 0.72f, 0.0f, 0.6f, 0.5f, 0.0f, 0.93f, 0.95f, 0.0f, 0.5f, 0.4f, 0.0f, 0.3f, 0.2f })
std::vector< float > anchors({ 0.5f, 0.5f, 1.0f, 1.0f, 0.5f, 0.5f, 1.0f, 1.0f, 0.5f, 0.5f, 1.0f, 1.0f, 0.5f, 10.5f, 1.0f, 1.0f, 0.5f, 10.5f, 1.0f, 1.0f, 0.5f, 100.5f, 1.0f, 1.0f })

◆ BOOST_AUTO_TEST_CASE() [59/136]

BOOST_AUTO_TEST_CASE ( RefDetectionPostProcessFastNmsUint8Test  )

Definition at line 760 of file RefEndToEndTests.cpp.

References anchors(), anchorsInfo, boxEncodings(), defaultBackends, armnn::Float32, qAnchors(), qBoxEncodings(), qScores(), QuantizeData(), scores(), scoresInfo, TensorInfo::SetQuantizationOffset(), and TensorInfo::SetQuantizationScale().

761 {
762  armnn::TensorInfo boxEncodingsInfo({ 1, 6, 4 }, armnn::DataType::Float32);
765 
766  boxEncodingsInfo.SetQuantizationScale(1.0f);
767  boxEncodingsInfo.SetQuantizationOffset(1);
772 
773  std::vector<float> boxEncodings({
774  0.0f, 0.0f, 0.0f, 0.0f,
775  0.0f, 1.0f, 0.0f, 0.0f,
776  0.0f, -1.0f, 0.0f, 0.0f,
777  0.0f, 0.0f, 0.0f, 0.0f,
778  0.0f, 1.0f, 0.0f, 0.0f,
779  0.0f, 0.0f, 0.0f, 0.0f
780  });
781  std::vector<float> scores({
782  0.0f, 0.9f, 0.8f,
783  0.0f, 0.75f, 0.72f,
784  0.0f, 0.6f, 0.5f,
785  0.0f, 0.93f, 0.95f,
786  0.0f, 0.5f, 0.4f,
787  0.0f, 0.3f, 0.2f
788  });
789  std::vector<float> anchors({
790  0.5f, 0.5f, 1.0f, 1.0f,
791  0.5f, 0.5f, 1.0f, 1.0f,
792  0.5f, 0.5f, 1.0f, 1.0f,
793  0.5f, 10.5f, 1.0f, 1.0f,
794  0.5f, 10.5f, 1.0f, 1.0f,
795  0.5f, 100.5f, 1.0f, 1.0f
796  });
797 
798  std::vector<uint8_t> qBoxEncodings(boxEncodings.size(), 0);
799  std::vector<uint8_t> qScores(scores.size(), 0);
800  std::vector<uint8_t> qAnchors(anchors.size(), 0);
801  QuantizeData(qBoxEncodings.data(), boxEncodings.data(), boxEncodingsInfo);
802  QuantizeData(qScores.data(), scores.data(), scoresInfo);
803  QuantizeData(qAnchors.data(), anchors.data(), anchorsInfo);
804  DetectionPostProcessFastNmsEndToEnd<armnn::DataType::QAsymmU8>(defaultBackends, qBoxEncodings,
805  qScores, qAnchors,
806  1.0f, 1, 0.01f, 0, 0.5f, 0);
807 }
std::vector< armnn::BackendId > defaultBackends
armnn::TensorInfo anchorsInfo({ 6, 4 }, armnn::DataType::Float32)
std::vector< float > boxEncodings({ 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 1.0f, 0.0f, 0.0f, 0.0f, -1.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 1.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f })
std::vector< uint8_t > qBoxEncodings(boxEncodings.size(), 0)
void SetQuantizationScale(float scale)
Definition: Tensor.cpp:259
std::vector< uint8_t > qAnchors(anchors.size(), 0)
std::vector< float > scores({ 0.0f, 0.9f, 0.8f, 0.0f, 0.75f, 0.72f, 0.0f, 0.6f, 0.5f, 0.0f, 0.93f, 0.95f, 0.0f, 0.5f, 0.4f, 0.0f, 0.3f, 0.2f })
void QuantizeData(uint8_t *quant, const float *dequant, const TensorInfo &info)
std::vector< uint8_t > qScores(scores.size(), 0)
armnn::TensorInfo scoresInfo({ 1, 6, 3 }, armnn::DataType::Float32)
void SetQuantizationOffset(int32_t offset)
Definition: Tensor.cpp:275
std::vector< float > anchors({ 0.5f, 0.5f, 1.0f, 1.0f, 0.5f, 0.5f, 1.0f, 1.0f, 0.5f, 0.5f, 1.0f, 1.0f, 0.5f, 10.5f, 1.0f, 1.0f, 0.5f, 10.5f, 1.0f, 1.0f, 0.5f, 100.5f, 1.0f, 1.0f })

◆ BOOST_AUTO_TEST_CASE() [60/136]

BOOST_AUTO_TEST_CASE ( RefLogSoftmaxEndToEndTest  )

Definition at line 810 of file RefEndToEndTests.cpp.

References defaultBackends, and LogSoftmaxEndToEndTest().

811 {
813 }
std::vector< armnn::BackendId > defaultBackends
void LogSoftmaxEndToEndTest(const std::vector< armnn::BackendId > &defaultBackends)

◆ BOOST_AUTO_TEST_CASE() [61/136]

BOOST_AUTO_TEST_CASE ( RefPreluEndToEndTestFloat32  )

Definition at line 815 of file RefEndToEndTests.cpp.

References defaultBackends.

816 {
817  PreluEndToEndNegativeTest<armnn::DataType::Float32>(defaultBackends);
818 }
std::vector< armnn::BackendId > defaultBackends

◆ BOOST_AUTO_TEST_CASE() [62/136]

BOOST_AUTO_TEST_CASE ( RefPreluEndToEndTestUint8  )

Definition at line 820 of file RefEndToEndTests.cpp.

References defaultBackends.

821 {
822  PreluEndToEndPositiveTest<armnn::DataType::QAsymmU8>(defaultBackends);
823 }
std::vector< armnn::BackendId > defaultBackends

◆ BOOST_AUTO_TEST_CASE() [63/136]

BOOST_AUTO_TEST_CASE ( RefPreluEndToEndTestQSymm16  )

Definition at line 825 of file RefEndToEndTests.cpp.

References defaultBackends.

826 {
827  PreluEndToEndPositiveTest<armnn::DataType::QSymmS16>(defaultBackends);
828 }
std::vector< armnn::BackendId > defaultBackends

◆ BOOST_AUTO_TEST_CASE() [64/136]

BOOST_AUTO_TEST_CASE ( RefSpaceToDepthNhwcEndToEndTest1  )

Definition at line 830 of file RefEndToEndTests.cpp.

References defaultBackends, and SpaceToDepthNhwcEndToEndTest1().

831 {
833 }
std::vector< armnn::BackendId > defaultBackends
void SpaceToDepthNhwcEndToEndTest1(const std::vector< armnn::BackendId > &defaultBackends)

◆ BOOST_AUTO_TEST_CASE() [65/136]

BOOST_AUTO_TEST_CASE ( RefSpaceToDepthNchwEndToEndTest1  )

Definition at line 835 of file RefEndToEndTests.cpp.

References defaultBackends, and SpaceToDepthNchwEndToEndTest1().

836 {
838 
839 }
void SpaceToDepthNchwEndToEndTest1(const std::vector< armnn::BackendId > &defaultBackends)
std::vector< armnn::BackendId > defaultBackends

◆ BOOST_AUTO_TEST_CASE() [66/136]

BOOST_AUTO_TEST_CASE ( RefSpaceToDepthNhwcEndToEndTest2  )

Definition at line 841 of file RefEndToEndTests.cpp.

References defaultBackends, and SpaceToDepthNhwcEndToEndTest2().

842 {
844 }
std::vector< armnn::BackendId > defaultBackends
void SpaceToDepthNhwcEndToEndTest2(const std::vector< armnn::BackendId > &defaultBackends)

◆ BOOST_AUTO_TEST_CASE() [67/136]

BOOST_AUTO_TEST_CASE ( RefSpaceToDepthNchwEndToEndTest2  )

Definition at line 846 of file RefEndToEndTests.cpp.

References defaultBackends, and SpaceToDepthNchwEndToEndTest2().

847 {
849 }
std::vector< armnn::BackendId > defaultBackends
void SpaceToDepthNchwEndToEndTest2(const std::vector< armnn::BackendId > &defaultBackends)

◆ BOOST_AUTO_TEST_CASE() [68/136]

BOOST_AUTO_TEST_CASE ( RefSplitter1dEndToEndTest  )

Definition at line 851 of file RefEndToEndTests.cpp.

References defaultBackends.

852 {
853  Splitter1dEndToEnd<armnn::DataType::Float32>(defaultBackends);
854 }
std::vector< armnn::BackendId > defaultBackends

◆ BOOST_AUTO_TEST_CASE() [69/136]

BOOST_AUTO_TEST_CASE ( RefSplitter1dEndToEndUint8Test  )

Definition at line 856 of file RefEndToEndTests.cpp.

References defaultBackends.

857 {
858  Splitter1dEndToEnd<armnn::DataType::QAsymmU8>(defaultBackends);
859 }
std::vector< armnn::BackendId > defaultBackends

◆ BOOST_AUTO_TEST_CASE() [70/136]

BOOST_AUTO_TEST_CASE ( RefSplitter2dDim0EndToEndTest  )

Definition at line 861 of file RefEndToEndTests.cpp.

References defaultBackends.

862 {
863  Splitter2dDim0EndToEnd<armnn::DataType::Float32>(defaultBackends);
864 }
std::vector< armnn::BackendId > defaultBackends

◆ BOOST_AUTO_TEST_CASE() [71/136]

BOOST_AUTO_TEST_CASE ( RefSplitter2dDim1EndToEndTest  )

Definition at line 866 of file RefEndToEndTests.cpp.

References defaultBackends.

867 {
868  Splitter2dDim1EndToEnd<armnn::DataType::Float32>(defaultBackends);
869 }
std::vector< armnn::BackendId > defaultBackends

◆ BOOST_AUTO_TEST_CASE() [72/136]

BOOST_AUTO_TEST_CASE ( RefSplitter2dDim0EndToEndUint8Test  )

Definition at line 871 of file RefEndToEndTests.cpp.

References defaultBackends.

872 {
873  Splitter2dDim0EndToEnd<armnn::DataType::QAsymmU8>(defaultBackends);
874 }
std::vector< armnn::BackendId > defaultBackends

◆ BOOST_AUTO_TEST_CASE() [73/136]

BOOST_AUTO_TEST_CASE ( RefSplitter2dDim1EndToEndUint8Test  )

Definition at line 876 of file RefEndToEndTests.cpp.

References defaultBackends.

877 {
878  Splitter2dDim1EndToEnd<armnn::DataType::QAsymmU8>(defaultBackends);
879 }
std::vector< armnn::BackendId > defaultBackends

◆ BOOST_AUTO_TEST_CASE() [74/136]

BOOST_AUTO_TEST_CASE ( RefSplitter3dDim0EndToEndTest  )

Definition at line 881 of file RefEndToEndTests.cpp.

References defaultBackends.

882 {
883  Splitter3dDim0EndToEnd<armnn::DataType::Float32>(defaultBackends);
884 }
std::vector< armnn::BackendId > defaultBackends

◆ BOOST_AUTO_TEST_CASE() [75/136]

BOOST_AUTO_TEST_CASE ( RefSplitter3dDim1EndToEndTest  )

Definition at line 886 of file RefEndToEndTests.cpp.

References defaultBackends.

887 {
888  Splitter3dDim1EndToEnd<armnn::DataType::Float32>(defaultBackends);
889 }
std::vector< armnn::BackendId > defaultBackends

◆ BOOST_AUTO_TEST_CASE() [76/136]

BOOST_AUTO_TEST_CASE ( RefSplitter3dDim2EndToEndTest  )

Definition at line 891 of file RefEndToEndTests.cpp.

References defaultBackends.

892 {
893  Splitter3dDim2EndToEnd<armnn::DataType::Float32>(defaultBackends);
894 }
std::vector< armnn::BackendId > defaultBackends

◆ BOOST_AUTO_TEST_CASE() [77/136]

BOOST_AUTO_TEST_CASE ( RefSplitter3dDim0EndToEndUint8Test  )

Definition at line 896 of file RefEndToEndTests.cpp.

References defaultBackends.

897 {
898  Splitter3dDim0EndToEnd<armnn::DataType::QAsymmU8>(defaultBackends);
899 }
std::vector< armnn::BackendId > defaultBackends

◆ BOOST_AUTO_TEST_CASE() [78/136]

BOOST_AUTO_TEST_CASE ( RefSplitter3dDim1EndToEndUint8Test  )

Definition at line 901 of file RefEndToEndTests.cpp.

References defaultBackends.

902 {
903  Splitter3dDim1EndToEnd<armnn::DataType::QAsymmU8>(defaultBackends);
904 }
std::vector< armnn::BackendId > defaultBackends

◆ BOOST_AUTO_TEST_CASE() [79/136]

BOOST_AUTO_TEST_CASE ( RefSplitter3dDim2EndToEndUint8Test  )

Definition at line 906 of file RefEndToEndTests.cpp.

References defaultBackends.

907 {
908  Splitter3dDim2EndToEnd<armnn::DataType::QAsymmU8>(defaultBackends);
909 }
std::vector< armnn::BackendId > defaultBackends

◆ BOOST_AUTO_TEST_CASE() [80/136]

BOOST_AUTO_TEST_CASE ( RefSplitter4dDim0EndToEndTest  )

Definition at line 911 of file RefEndToEndTests.cpp.

References defaultBackends.

912 {
913  Splitter4dDim0EndToEnd<armnn::DataType::Float32>(defaultBackends);
914 }
std::vector< armnn::BackendId > defaultBackends

◆ BOOST_AUTO_TEST_CASE() [81/136]

BOOST_AUTO_TEST_CASE ( RefSplitter4dDim1EndToEndTest  )

Definition at line 916 of file RefEndToEndTests.cpp.

References defaultBackends.

917 {
918  Splitter4dDim1EndToEnd<armnn::DataType::Float32>(defaultBackends);
919 }
std::vector< armnn::BackendId > defaultBackends

◆ BOOST_AUTO_TEST_CASE() [82/136]

BOOST_AUTO_TEST_CASE ( RefSplitter4dDim2EndToEndTest  )

Definition at line 921 of file RefEndToEndTests.cpp.

References defaultBackends.

922 {
923  Splitter4dDim2EndToEnd<armnn::DataType::Float32>(defaultBackends);
924 }
std::vector< armnn::BackendId > defaultBackends

◆ BOOST_AUTO_TEST_CASE() [83/136]

BOOST_AUTO_TEST_CASE ( RefSplitter4dDim3EndToEndTest  )

Definition at line 926 of file RefEndToEndTests.cpp.

References defaultBackends.

927 {
928  Splitter4dDim3EndToEnd<armnn::DataType::Float32>(defaultBackends);
929 }
std::vector< armnn::BackendId > defaultBackends

◆ BOOST_AUTO_TEST_CASE() [84/136]

BOOST_AUTO_TEST_CASE ( RefSplitter4dDim0EndToEndUint8Test  )

Definition at line 931 of file RefEndToEndTests.cpp.

References defaultBackends.

932 {
933  Splitter4dDim0EndToEnd<armnn::DataType::QAsymmU8>(defaultBackends);
934 }
std::vector< armnn::BackendId > defaultBackends

◆ BOOST_AUTO_TEST_CASE() [85/136]

BOOST_AUTO_TEST_CASE ( RefSplitter4dDim1EndToEndUint8Test  )

Definition at line 936 of file RefEndToEndTests.cpp.

References defaultBackends.

937 {
938  Splitter4dDim1EndToEnd<armnn::DataType::QAsymmU8>(defaultBackends);
939 }
std::vector< armnn::BackendId > defaultBackends

◆ BOOST_AUTO_TEST_CASE() [86/136]

BOOST_AUTO_TEST_CASE ( RefSplitter4dDim2EndToEndUint8Test  )

Definition at line 941 of file RefEndToEndTests.cpp.

References defaultBackends.

942 {
943  Splitter4dDim2EndToEnd<armnn::DataType::QAsymmU8>(defaultBackends);
944 }
std::vector< armnn::BackendId > defaultBackends

◆ BOOST_AUTO_TEST_CASE() [87/136]

BOOST_AUTO_TEST_CASE ( RefSplitter4dDim3EndToEndUint8Test  )

Definition at line 946 of file RefEndToEndTests.cpp.

References defaultBackends.

947 {
948  Splitter4dDim3EndToEnd<armnn::DataType::QAsymmU8>(defaultBackends);
949 }
std::vector< armnn::BackendId > defaultBackends

◆ BOOST_AUTO_TEST_CASE() [88/136]

BOOST_AUTO_TEST_CASE ( RefTransposeConvolution2dEndToEndFloatNchwTest  )

Definition at line 952 of file RefEndToEndTests.cpp.

References defaultBackends, and armnn::NCHW.

953 {
954  TransposeConvolution2dEndToEnd<armnn::DataType::Float32, armnn::DataType::Float32>(
956 }
std::vector< armnn::BackendId > defaultBackends

◆ BOOST_AUTO_TEST_CASE() [89/136]

BOOST_AUTO_TEST_CASE ( RefTransposeConvolution2dEndToEndUint8NchwTest  )

Definition at line 958 of file RefEndToEndTests.cpp.

References defaultBackends, and armnn::NCHW.

959 {
960  TransposeConvolution2dEndToEnd<armnn::DataType::QAsymmU8, armnn::DataType::Signed32>(
962 }
std::vector< armnn::BackendId > defaultBackends

◆ BOOST_AUTO_TEST_CASE() [90/136]

BOOST_AUTO_TEST_CASE ( RefTransposeConvolution2dEndToEndInt16NchwTest  )

Definition at line 964 of file RefEndToEndTests.cpp.

References defaultBackends, and armnn::NCHW.

965 {
966  TransposeConvolution2dEndToEnd<armnn::DataType::QSymmS16, armnn::DataType::Signed32>(
968 }
std::vector< armnn::BackendId > defaultBackends

◆ BOOST_AUTO_TEST_CASE() [91/136]

BOOST_AUTO_TEST_CASE ( RefTransposeConvolution2dEndToEndFloatNhwcTest  )

Definition at line 970 of file RefEndToEndTests.cpp.

References defaultBackends, and armnn::NHWC.

971 {
972  TransposeConvolution2dEndToEnd<armnn::DataType::Float32, armnn::DataType::Float32>(
974 }
std::vector< armnn::BackendId > defaultBackends

◆ BOOST_AUTO_TEST_CASE() [92/136]

BOOST_AUTO_TEST_CASE ( RefTransposeConvolution2dEndToEndUint8NhwcTest  )

Definition at line 976 of file RefEndToEndTests.cpp.

References defaultBackends, and armnn::NHWC.

977 {
978  TransposeConvolution2dEndToEnd<armnn::DataType::QAsymmU8, armnn::DataType::Signed32>(
980 }
std::vector< armnn::BackendId > defaultBackends

◆ BOOST_AUTO_TEST_CASE() [93/136]

BOOST_AUTO_TEST_CASE ( RefTransposeConvolution2dEndToEndInt16NhwcTest  )

Definition at line 982 of file RefEndToEndTests.cpp.

References defaultBackends, and armnn::NHWC.

983 {
984  TransposeConvolution2dEndToEnd<armnn::DataType::QSymmS16, armnn::DataType::Signed32>(
986 }
std::vector< armnn::BackendId > defaultBackends

◆ BOOST_AUTO_TEST_CASE() [94/136]

BOOST_AUTO_TEST_CASE ( RefResizeBilinearEndToEndFloatNchwTest  )

Definition at line 989 of file RefEndToEndTests.cpp.

References defaultBackends, and armnn::NCHW.

990 {
991  ResizeBilinearEndToEnd<armnn::DataType::Float32>(defaultBackends, armnn::DataLayout::NCHW);
992 }
std::vector< armnn::BackendId > defaultBackends

◆ BOOST_AUTO_TEST_CASE() [95/136]

BOOST_AUTO_TEST_CASE ( RefResizeBilinearEndToEndUint8NchwTest  )

Definition at line 994 of file RefEndToEndTests.cpp.

References defaultBackends, and armnn::NCHW.

995 {
996  ResizeBilinearEndToEnd<armnn::DataType::QAsymmU8>(defaultBackends, armnn::DataLayout::NCHW);
997 }
std::vector< armnn::BackendId > defaultBackends

◆ BOOST_AUTO_TEST_CASE() [96/136]

BOOST_AUTO_TEST_CASE ( RefResizeBilinearEndToEndInt16NchwTest  )

Definition at line 999 of file RefEndToEndTests.cpp.

References defaultBackends, and armnn::NCHW.

1000 {
1001  ResizeBilinearEndToEnd<armnn::DataType::QSymmS16>(defaultBackends, armnn::DataLayout::NCHW);
1002 }
std::vector< armnn::BackendId > defaultBackends

◆ BOOST_AUTO_TEST_CASE() [97/136]

BOOST_AUTO_TEST_CASE ( RefResizeBilinearEndToEndFloatNhwcTest  )

Definition at line 1004 of file RefEndToEndTests.cpp.

References defaultBackends, and armnn::NHWC.

1005 {
1006  ResizeBilinearEndToEnd<armnn::DataType::Float32>(defaultBackends, armnn::DataLayout::NHWC);
1007 }
std::vector< armnn::BackendId > defaultBackends

◆ BOOST_AUTO_TEST_CASE() [98/136]

BOOST_AUTO_TEST_CASE ( RefResizeBilinearEndToEndUint8NhwcTest  )

Definition at line 1009 of file RefEndToEndTests.cpp.

References defaultBackends, and armnn::NHWC.

1010 {
1011  ResizeBilinearEndToEnd<armnn::DataType::QAsymmU8>(defaultBackends, armnn::DataLayout::NHWC);
1012 }
std::vector< armnn::BackendId > defaultBackends

◆ BOOST_AUTO_TEST_CASE() [99/136]

BOOST_AUTO_TEST_CASE ( RefResizeBilinearEndToEndInt16NhwcTest  )

Definition at line 1014 of file RefEndToEndTests.cpp.

References defaultBackends, and armnn::NHWC.

1015 {
1016  ResizeBilinearEndToEnd<armnn::DataType::QSymmS16>(defaultBackends, armnn::DataLayout::NHWC);
1017 }
std::vector< armnn::BackendId > defaultBackends

◆ BOOST_AUTO_TEST_CASE() [100/136]

BOOST_AUTO_TEST_CASE ( RefResizeNearestNeighborEndToEndFloatNchwTest  )

Definition at line 1020 of file RefEndToEndTests.cpp.

References defaultBackends, and armnn::NCHW.

1021 {
1022  ResizeNearestNeighborEndToEnd<armnn::DataType::Float32>(defaultBackends, armnn::DataLayout::NCHW);
1023 }
std::vector< armnn::BackendId > defaultBackends

◆ BOOST_AUTO_TEST_CASE() [101/136]

BOOST_AUTO_TEST_CASE ( RefResizeNearestNeighborEndToEndUint8NchwTest  )

Definition at line 1025 of file RefEndToEndTests.cpp.

References defaultBackends, and armnn::NCHW.

1026 {
1027  ResizeNearestNeighborEndToEnd<armnn::DataType::QAsymmU8>(defaultBackends, armnn::DataLayout::NCHW);
1028 }
std::vector< armnn::BackendId > defaultBackends

◆ BOOST_AUTO_TEST_CASE() [102/136]

BOOST_AUTO_TEST_CASE ( RefResizeNearestNeighborEndToEndInt16NchwTest  )

Definition at line 1030 of file RefEndToEndTests.cpp.

References defaultBackends, and armnn::NCHW.

1031 {
1032  ResizeNearestNeighborEndToEnd<armnn::DataType::QSymmS16>(defaultBackends, armnn::DataLayout::NCHW);
1033 }
std::vector< armnn::BackendId > defaultBackends

◆ BOOST_AUTO_TEST_CASE() [103/136]

BOOST_AUTO_TEST_CASE ( RefResizeNearestNeighborEndToEndFloatNhwcTest  )

Definition at line 1035 of file RefEndToEndTests.cpp.

References defaultBackends, and armnn::NHWC.

1036 {
1037  ResizeNearestNeighborEndToEnd<armnn::DataType::Float32>(defaultBackends, armnn::DataLayout::NHWC);
1038 }
std::vector< armnn::BackendId > defaultBackends

◆ BOOST_AUTO_TEST_CASE() [104/136]

BOOST_AUTO_TEST_CASE ( RefResizeNearestNeighborEndToEndUint8NhwcTest  )

Definition at line 1040 of file RefEndToEndTests.cpp.

References defaultBackends, and armnn::NHWC.

1041 {
1042  ResizeNearestNeighborEndToEnd<armnn::DataType::QAsymmU8>(defaultBackends, armnn::DataLayout::NHWC);
1043 }
std::vector< armnn::BackendId > defaultBackends

◆ BOOST_AUTO_TEST_CASE() [105/136]

BOOST_AUTO_TEST_CASE ( RefResizeNearestNeighborEndToEndInt16NhwcTest  )

Definition at line 1045 of file RefEndToEndTests.cpp.

References defaultBackends, and armnn::NHWC.

1046 {
1047  ResizeNearestNeighborEndToEnd<armnn::DataType::QSymmS16>(defaultBackends, armnn::DataLayout::NHWC);
1048 }
std::vector< armnn::BackendId > defaultBackends

◆ BOOST_AUTO_TEST_CASE() [106/136]

BOOST_AUTO_TEST_CASE ( RefInstanceNormalizationNhwcEndToEndTest1  )

Definition at line 1051 of file RefEndToEndTests.cpp.

References defaultBackends, and InstanceNormalizationNhwcEndToEndTest1().

1052 {
1054 }
void InstanceNormalizationNhwcEndToEndTest1(const std::vector< armnn::BackendId > &defaultBackends)
std::vector< armnn::BackendId > defaultBackends

◆ BOOST_AUTO_TEST_CASE() [107/136]

BOOST_AUTO_TEST_CASE ( RefInstanceNormalizationNchwEndToEndTest1  )

Definition at line 1056 of file RefEndToEndTests.cpp.

References defaultBackends, and InstanceNormalizationNchwEndToEndTest1().

1057 {
1059 }
std::vector< armnn::BackendId > defaultBackends
void InstanceNormalizationNchwEndToEndTest1(const std::vector< armnn::BackendId > &defaultBackends)

◆ BOOST_AUTO_TEST_CASE() [108/136]

BOOST_AUTO_TEST_CASE ( RefInstanceNormalizationNhwcEndToEndTest2  )

Definition at line 1061 of file RefEndToEndTests.cpp.

References defaultBackends, and InstanceNormalizationNhwcEndToEndTest2().

1062 {
1064 }
std::vector< armnn::BackendId > defaultBackends
void InstanceNormalizationNhwcEndToEndTest2(const std::vector< armnn::BackendId > &defaultBackends)

◆ BOOST_AUTO_TEST_CASE() [109/136]

BOOST_AUTO_TEST_CASE ( RefInstanceNormalizationNchwEndToEndTest2  )

Definition at line 1066 of file RefEndToEndTests.cpp.

References defaultBackends, and InstanceNormalizationNchwEndToEndTest2().

1067 {
1069 }
std::vector< armnn::BackendId > defaultBackends
void InstanceNormalizationNchwEndToEndTest2(const std::vector< armnn::BackendId > &defaultBackends)

◆ BOOST_AUTO_TEST_CASE() [110/136]

BOOST_AUTO_TEST_CASE ( RefArgMaxSimpleTest  )

Definition at line 1072 of file RefEndToEndTests.cpp.

References defaultBackends.

1073 {
1074  ArgMaxEndToEndSimple<armnn::DataType::Float32>(defaultBackends);
1075 }
std::vector< armnn::BackendId > defaultBackends

◆ BOOST_AUTO_TEST_CASE() [111/136]

BOOST_AUTO_TEST_CASE ( RefArgMaxSimpleUint8Test  )

Definition at line 1077 of file RefEndToEndTests.cpp.

References defaultBackends.

1078 {
1079  ArgMaxEndToEndSimple<armnn::DataType::QAsymmU8>(defaultBackends);
1080 }
std::vector< armnn::BackendId > defaultBackends

◆ BOOST_AUTO_TEST_CASE() [112/136]

BOOST_AUTO_TEST_CASE ( RefArgMinSimpleTest  )

Definition at line 1082 of file RefEndToEndTests.cpp.

References defaultBackends.

1083 {
1084  ArgMinEndToEndSimple<armnn::DataType::Float32>(defaultBackends);
1085 }
std::vector< armnn::BackendId > defaultBackends

◆ BOOST_AUTO_TEST_CASE() [113/136]

BOOST_AUTO_TEST_CASE ( RefArgMinSimpleUint8Test  )

Definition at line 1087 of file RefEndToEndTests.cpp.

References defaultBackends.

1088 {
1089  ArgMinEndToEndSimple<armnn::DataType::QAsymmU8>(defaultBackends);
1090 }
std::vector< armnn::BackendId > defaultBackends

◆ BOOST_AUTO_TEST_CASE() [114/136]

BOOST_AUTO_TEST_CASE ( RefArgMaxAxis0Test  )

Definition at line 1092 of file RefEndToEndTests.cpp.

References defaultBackends.

1093 {
1094  ArgMaxAxis0EndToEnd<armnn::DataType::Float32>(defaultBackends);
1095 }
std::vector< armnn::BackendId > defaultBackends

◆ BOOST_AUTO_TEST_CASE() [115/136]

BOOST_AUTO_TEST_CASE ( RefArgMaxAxis0Uint8Test  )

Definition at line 1097 of file RefEndToEndTests.cpp.

References defaultBackends.

1098 {
1099  ArgMaxAxis0EndToEnd<armnn::DataType::QAsymmU8>(defaultBackends);
1100 }
std::vector< armnn::BackendId > defaultBackends

◆ BOOST_AUTO_TEST_CASE() [116/136]

BOOST_AUTO_TEST_CASE ( RefArgMinAxis0Test  )

Definition at line 1102 of file RefEndToEndTests.cpp.

References defaultBackends.

1103 {
1104  ArgMinAxis0EndToEnd<armnn::DataType::Float32>(defaultBackends);
1105 }
std::vector< armnn::BackendId > defaultBackends

◆ BOOST_AUTO_TEST_CASE() [117/136]

BOOST_AUTO_TEST_CASE ( RefArgMinAxis0Uint8Test  )

Definition at line 1107 of file RefEndToEndTests.cpp.

References defaultBackends.

1108 {
1109 
1110  ArgMinAxis0EndToEnd<armnn::DataType::QAsymmU8>(defaultBackends);
1111 }
std::vector< armnn::BackendId > defaultBackends

◆ BOOST_AUTO_TEST_CASE() [118/136]

BOOST_AUTO_TEST_CASE ( RefArgMaxAxis1Test  )

Definition at line 1113 of file RefEndToEndTests.cpp.

References defaultBackends.

1114 {
1115  ArgMaxAxis1EndToEnd<armnn::DataType::Float32>(defaultBackends);
1116 }
std::vector< armnn::BackendId > defaultBackends

◆ BOOST_AUTO_TEST_CASE() [119/136]

BOOST_AUTO_TEST_CASE ( RefArgMaxAxis1Uint8Test  )

Definition at line 1118 of file RefEndToEndTests.cpp.

References defaultBackends.

1119 {
1120  ArgMaxAxis1EndToEnd<armnn::DataType::QAsymmU8>(defaultBackends);
1121 }
std::vector< armnn::BackendId > defaultBackends

◆ BOOST_AUTO_TEST_CASE() [120/136]

BOOST_AUTO_TEST_CASE ( RefArgMinAxis1Test  )

Definition at line 1123 of file RefEndToEndTests.cpp.

References defaultBackends.

1124 {
1125  ArgMinAxis1EndToEnd<armnn::DataType::Float32>(defaultBackends);
1126 }
std::vector< armnn::BackendId > defaultBackends

◆ BOOST_AUTO_TEST_CASE() [121/136]

BOOST_AUTO_TEST_CASE ( RefArgMinAxis1Uint8Test  )

Definition at line 1128 of file RefEndToEndTests.cpp.

References defaultBackends.

1129 {
1130 
1131  ArgMinAxis1EndToEnd<armnn::DataType::QAsymmU8>(defaultBackends);
1132 }
std::vector< armnn::BackendId > defaultBackends

◆ BOOST_AUTO_TEST_CASE() [122/136]

BOOST_AUTO_TEST_CASE ( RefArgMaxAxis2Test  )

Definition at line 1134 of file RefEndToEndTests.cpp.

References defaultBackends.

1135 {
1136  ArgMaxAxis2EndToEnd<armnn::DataType::Float32>(defaultBackends);
1137 }
std::vector< armnn::BackendId > defaultBackends

◆ BOOST_AUTO_TEST_CASE() [123/136]

BOOST_AUTO_TEST_CASE ( RefArgMaxAxis2Uint8Test  )

Definition at line 1139 of file RefEndToEndTests.cpp.

References defaultBackends.

1140 {
1141  ArgMaxAxis2EndToEnd<armnn::DataType::QAsymmU8>(defaultBackends);
1142 }
std::vector< armnn::BackendId > defaultBackends

◆ BOOST_AUTO_TEST_CASE() [124/136]

BOOST_AUTO_TEST_CASE ( RefArgMinAxis2Test  )

Definition at line 1144 of file RefEndToEndTests.cpp.

References defaultBackends.

1145 {
1146  ArgMinAxis2EndToEnd<armnn::DataType::Float32>(defaultBackends);
1147 }
std::vector< armnn::BackendId > defaultBackends

◆ BOOST_AUTO_TEST_CASE() [125/136]

BOOST_AUTO_TEST_CASE ( RefArgMinAxis2Uint8Test  )

Definition at line 1149 of file RefEndToEndTests.cpp.

References defaultBackends.

1150 {
1151 
1152  ArgMinAxis2EndToEnd<armnn::DataType::QAsymmU8>(defaultBackends);
1153 }
std::vector< armnn::BackendId > defaultBackends

◆ BOOST_AUTO_TEST_CASE() [126/136]

BOOST_AUTO_TEST_CASE ( RefArgMaxAxis3Test  )

Definition at line 1155 of file RefEndToEndTests.cpp.

References defaultBackends.

1156 {
1157  ArgMaxAxis3EndToEnd<armnn::DataType::Float32>(defaultBackends);
1158 }
std::vector< armnn::BackendId > defaultBackends

◆ BOOST_AUTO_TEST_CASE() [127/136]

BOOST_AUTO_TEST_CASE ( RefArgMaxAxis3Uint8Test  )

Definition at line 1160 of file RefEndToEndTests.cpp.

References defaultBackends.

1161 {
1162  ArgMaxAxis3EndToEnd<armnn::DataType::QAsymmU8>(defaultBackends);
1163 }
std::vector< armnn::BackendId > defaultBackends

◆ BOOST_AUTO_TEST_CASE() [128/136]

BOOST_AUTO_TEST_CASE ( RefArgMinAxis3Test  )

Definition at line 1165 of file RefEndToEndTests.cpp.

References defaultBackends.

1166 {
1167  ArgMinAxis3EndToEnd<armnn::DataType::Float32>(defaultBackends);
1168 }
std::vector< armnn::BackendId > defaultBackends

◆ BOOST_AUTO_TEST_CASE() [129/136]

BOOST_AUTO_TEST_CASE ( RefArgMinAxis3Uint8Test  )

Definition at line 1170 of file RefEndToEndTests.cpp.

References defaultBackends.

1171 {
1172 
1173  ArgMinAxis3EndToEnd<armnn::DataType::QAsymmU8>(defaultBackends);
1174 }
std::vector< armnn::BackendId > defaultBackends

◆ BOOST_AUTO_TEST_CASE() [130/136]

BOOST_AUTO_TEST_CASE ( RefImportNonAlignedPointerTest  )

Definition at line 1178 of file RefEndToEndTests.cpp.

References defaultBackends.

1179 {
1180  ImportNonAlignedInputPointerTest(defaultBackends);
1181 }
std::vector< armnn::BackendId > defaultBackends

◆ BOOST_AUTO_TEST_CASE() [131/136]

BOOST_AUTO_TEST_CASE ( RefExportNonAlignedPointerTest  )

Definition at line 1183 of file RefEndToEndTests.cpp.

References defaultBackends.

1184 {
1185  ExportNonAlignedOutputPointerTest(defaultBackends);
1186 }
std::vector< armnn::BackendId > defaultBackends

◆ BOOST_AUTO_TEST_CASE() [132/136]

BOOST_AUTO_TEST_CASE ( RefImportAlignedPointerTest  )

Definition at line 1188 of file RefEndToEndTests.cpp.

References defaultBackends.

1189 {
1190  ImportAlignedPointerTest(defaultBackends);
1191 }
std::vector< armnn::BackendId > defaultBackends

◆ BOOST_AUTO_TEST_CASE() [133/136]

BOOST_AUTO_TEST_CASE ( RefImportOnlyWorkload  )

Definition at line 1193 of file RefEndToEndTests.cpp.

References defaultBackends.

1194 {
1195  ImportOnlyWorkload(defaultBackends);
1196 }
std::vector< armnn::BackendId > defaultBackends

◆ BOOST_AUTO_TEST_CASE() [134/136]

BOOST_AUTO_TEST_CASE ( RefExportOnlyWorkload  )

Definition at line 1198 of file RefEndToEndTests.cpp.

References defaultBackends.

1199 {
1200  ExportOnlyWorkload(defaultBackends);
1201 }
std::vector< armnn::BackendId > defaultBackends

◆ BOOST_AUTO_TEST_CASE() [135/136]

BOOST_AUTO_TEST_CASE ( RefImportAndExportWorkload  )

Definition at line 1203 of file RefEndToEndTests.cpp.

References defaultBackends.

1204 {
1205  ImportAndExportWorkload(defaultBackends);
1206 }
std::vector< armnn::BackendId > defaultBackends

◆ BOOST_AUTO_TEST_CASE() [136/136]

BOOST_AUTO_TEST_CASE ( RefExportOutputWithSeveralOutputSlotConnectionsTest  )

Definition at line 1208 of file RefEndToEndTests.cpp.

References BOOST_AUTO_TEST_SUITE_END(), and defaultBackends.

1209 {
1210  ExportOutputWithSeveralOutputSlotConnectionsTest(defaultBackends);
1211 }
std::vector< armnn::BackendId > defaultBackends

◆ QuantizeData()

void QuantizeData ( uint8_t *  quant,
const float *  dequant,
const TensorInfo info 
)
inline

Definition at line 674 of file RefEndToEndTests.cpp.

References TensorInfo::GetNumElements(), TensorInfo::GetQuantizationOffset(), and TensorInfo::GetQuantizationScale().

Referenced by BOOST_AUTO_TEST_CASE().

675 {
676  for (size_t i = 0; i < info.GetNumElements(); i++)
677  {
678  quant[i] = armnn::Quantize<uint8_t>(dequant[i], info.GetQuantizationScale(), info.GetQuantizationOffset());
679  }
680 }
int32_t GetQuantizationOffset() const
Definition: Tensor.cpp:264
float GetQuantizationScale() const
Definition: Tensor.cpp:247
unsigned int GetNumElements() const
Definition: Tensor.hpp:93

Variable Documentation

◆ defaultBackends

std::vector<armnn::BackendId> defaultBackends = {armnn::Compute::CpuRef}

Definition at line 30 of file RefEndToEndTests.cpp.

Referenced by BOOST_AUTO_TEST_CASE().