2 // Copyright © 2017 Arm Ltd. All rights reserved.
3 // SPDX-License-Identifier: MIT
7 #include <armnn/ArmNN.hpp>
8 #include <armnn/Tensor.hpp>
12 #include <backendsCommon/IBackendInternal.hpp>
13 #include <backendsCommon/IMemoryManager.hpp>
15 #include <boost/multi_array.hpp>
16 #include <boost/assert.hpp>
24 class IWorkloadFactory;
27 template <std::size_t n>
28 boost::array<unsigned int, n> GetTensorShapeAsArray(const armnn::TensorInfo& tensorInfo)
30 BOOST_ASSERT_MSG(n == tensorInfo.GetNumDimensions(),
31 "Attempting to construct a shape array of mismatching size");
33 boost::array<unsigned int, n> shape;
34 for (unsigned int i = 0; i < n; i++)
36 shape[i] = tensorInfo.GetShape()[i];
41 template <typename T, std::size_t n>
42 struct LayerTestResult
44 LayerTestResult(const armnn::TensorInfo& outputInfo)
46 auto shape( GetTensorShapeAsArray<n>(outputInfo) );
48 outputExpected.resize(shape);
52 boost::multi_array<T, n> output;
53 boost::multi_array<T, n> outputExpected;
57 LayerTestResult<float, 4> SimpleConvolution2d3x5Test(
58 armnn::IWorkloadFactory& workloadFactory,
59 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
61 const armnn::DataLayout layout);
63 LayerTestResult<float, 4> SimpleConvolution2d3x3Test(
64 armnn::IWorkloadFactory& workloadFactory,
65 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
67 const armnn::DataLayout layout);
69 LayerTestResult<float, 4> SimpleConvolution2d3x3Stride2x2Test(
70 armnn::IWorkloadFactory& workloadFactory,
71 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
73 const armnn::DataLayout layout);
75 LayerTestResult<float, 4> SimpleConvolution2d3x3NhwcTest(
76 armnn::IWorkloadFactory& workloadFactory,
77 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
80 LayerTestResult<float, 4>
81 Convolution2dAsymmetricPaddingLargerThanHalfKernelSizeTest(
82 armnn::IWorkloadFactory& workloadFactory,
83 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
84 const armnn::DataLayout layout);
86 LayerTestResult<float, 4> Convolution2dAsymmetricPaddingTest(
87 armnn::IWorkloadFactory& workloadFactory,
88 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
89 const armnn::DataLayout layout);
91 LayerTestResult<float, 4> Convolution1dTest(
92 armnn::IWorkloadFactory& workloadFactory,
93 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
96 LayerTestResult<uint8_t, 4> Convolution1dUint8Test(
97 armnn::IWorkloadFactory& workloadFactory,
98 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
101 LayerTestResult<float, 4> DepthwiseConvolution2dTest(
102 armnn::IWorkloadFactory& workloadFactory,
103 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
105 const armnn::DataLayout layout);
107 LayerTestResult<float, 4> DepthwiseConvolution2dDepthNhwcTest(
108 armnn::IWorkloadFactory& workloadFactory,
109 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
112 LayerTestResult<float, 4> DepthwiseConvolution2dDepthMul1Test(
113 armnn::IWorkloadFactory& workloadFactory,
114 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
116 const armnn::DataLayout layout);
118 LayerTestResult<float, 4> DepthwiseConvolution2dAsymmetricTest(
119 armnn::IWorkloadFactory& workloadFactory,
120 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
122 const armnn::DataLayout layout);
124 LayerTestResult<float, 4> CompareDepthwiseConvolution2dFloatTest(
125 armnn::IWorkloadFactory& workloadFactory,
126 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
127 armnn::IWorkloadFactory& refWorkloadFactory,
128 const armnn::DataLayout layout);
130 LayerTestResult<uint8_t, 4> CompareDepthwiseConvolution2dUint8Test(
131 armnn::IWorkloadFactory& workloadFactory,
132 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
133 armnn::IWorkloadFactory& refWorkloadFactory,
134 const armnn::DataLayout layout);
136 LayerTestResult<float, 4> SimpleMaxPooling2dSize2x2Stride2x2Test(
137 armnn::IWorkloadFactory& workloadFactory,
138 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
139 bool forceNoPadding);
141 LayerTestResult<uint8_t, 4> SimpleMaxPooling2dSize2x2Stride2x2Uint8Test(
142 armnn::IWorkloadFactory& workloadFactory,
143 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
144 bool forceNoPadding);
146 LayerTestResult<float, 4> SimpleMaxPooling2dSize3x3Stride2x4Test(
147 armnn::IWorkloadFactory& workloadFactory,
148 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
149 bool forceNoPadding);
151 LayerTestResult<uint8_t, 4> SimpleMaxPooling2dSize3x3Stride2x4Uint8Test(
152 armnn::IWorkloadFactory& workloadFactory,
153 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
154 bool forceNoPadding );
156 LayerTestResult<float, 4> IgnorePaddingSimpleMaxPooling2dTest(
157 armnn::IWorkloadFactory& workloadFactory,
158 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
160 LayerTestResult<uint8_t, 4> IgnorePaddingSimpleMaxPooling2dUint8Test(
161 armnn::IWorkloadFactory& workloadFactory,
162 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
164 LayerTestResult<float, 4> IgnorePaddingMaxPooling2dSize3Test(
165 armnn::IWorkloadFactory& workloadFactory,
166 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
168 LayerTestResult<uint8_t, 4> IgnorePaddingMaxPooling2dSize3Uint8Test(
169 armnn::IWorkloadFactory& workloadFactory,
170 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
172 LayerTestResult<float, 4> SimpleMaxPooling2dTest(
173 armnn::IWorkloadFactory& workloadFactory,
174 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
175 const armnn::DataLayout dataLayout);
177 LayerTestResult<uint8_t, 4> SimpleMaxPooling2dUint8Test(
178 armnn::IWorkloadFactory& workloadFactory,
179 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
180 const armnn::DataLayout dataLayout);
182 LayerTestResult<float, 4> SimpleAveragePooling2dTest(
183 armnn::IWorkloadFactory& workloadFactory,
184 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
185 const armnn::DataLayout dataLayout);
187 LayerTestResult<uint8_t, 4> SimpleAveragePooling2dUint8Test(
188 armnn::IWorkloadFactory& workloadFactory,
189 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
190 const armnn::DataLayout dataLayout);
192 LayerTestResult<float, 4> IgnorePaddingAveragePooling2dSize3x2Stride2x2Test(
193 armnn::IWorkloadFactory& workloadFactory,
194 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
195 bool forceNoPadding);
197 LayerTestResult<float, 4> IgnorePaddingSimpleAveragePooling2dTest(
198 armnn::IWorkloadFactory& workloadFactory,
199 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
201 LayerTestResult<uint8_t, 4> IgnorePaddingSimpleAveragePooling2dUint8Test(
202 armnn::IWorkloadFactory& workloadFactory,
203 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
205 LayerTestResult<float, 4> IgnorePaddingSimpleAveragePooling2dNoPaddingTest(
206 armnn::IWorkloadFactory& workloadFactory,
207 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
209 LayerTestResult<uint8_t, 4> IgnorePaddingSimpleAveragePooling2dNoPaddingUint8Test(
210 armnn::IWorkloadFactory& workloadFactory,
211 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
213 LayerTestResult<float, 4> IgnorePaddingAveragePooling2dSize3Test(
214 armnn::IWorkloadFactory& workloadFactory,
215 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
217 LayerTestResult<uint8_t, 4> IgnorePaddingAveragePooling2dSize3Uint8Test(
218 armnn::IWorkloadFactory& workloadFactory,
219 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
221 LayerTestResult<float, 4> SimpleL2Pooling2dTest(
222 armnn::IWorkloadFactory& workloadFactory,
223 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
224 const armnn::DataLayout dataLayout);
226 LayerTestResult<uint8_t, 4> SimpleL2Pooling2dUint8Test(
227 armnn::IWorkloadFactory& workloadFactory,
228 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
229 const armnn::DataLayout dataLayout);
231 LayerTestResult<float, 4> L2Pooling2dSize3Stride1Test(
232 armnn::IWorkloadFactory& workloadFactory,
233 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
235 LayerTestResult<uint8_t, 4> L2Pooling2dSize3Stride1Uint8Test(
236 armnn::IWorkloadFactory& workloadFactory,
237 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
239 LayerTestResult<float, 4> L2Pooling2dSize3Stride3Test(
240 armnn::IWorkloadFactory& workloadFactory,
241 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
243 LayerTestResult<uint8_t, 4> L2Pooling2dSize3Stride3Uint8Test(
244 armnn::IWorkloadFactory& workloadFactory,
245 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
247 LayerTestResult<float, 4> L2Pooling2dSize3Stride4Test(
248 armnn::IWorkloadFactory& workloadFactory,
249 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
251 LayerTestResult<uint8_t, 4> L2Pooling2dSize3Stride4Uint8Test(
252 armnn::IWorkloadFactory& workloadFactory,
253 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
255 LayerTestResult<float, 4> L2Pooling2dSize7Test(
256 armnn::IWorkloadFactory& workloadFactory,
257 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
259 LayerTestResult<uint8_t, 4> L2Pooling2dSize7Uint8Test(
260 armnn::IWorkloadFactory& workloadFactory,
261 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
263 LayerTestResult<float, 4> L2Pooling2dSize9Test(
264 armnn::IWorkloadFactory& workloadFactory,
265 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
267 LayerTestResult<uint8_t, 4> L2Pooling2dSize9Uint8Test(
268 armnn::IWorkloadFactory& workloadFactory,
269 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
271 LayerTestResult<float, 4> LargeTensorsAveragePooling2dTest(
272 armnn::IWorkloadFactory& workloadFactory,
273 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
275 LayerTestResult<uint8_t, 4> LargeTensorsAveragePooling2dUint8Test(
276 armnn::IWorkloadFactory& workloadFactory,
277 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
279 LayerTestResult<float, 4> IgnorePaddingSimpleL2Pooling2dTest(
280 armnn::IWorkloadFactory& workloadFactory,
281 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
283 LayerTestResult<uint8_t, 4> IgnorePaddingSimpleL2Pooling2dUint8Test(
284 armnn::IWorkloadFactory& workloadFactory,
285 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
287 LayerTestResult<float, 4> IgnorePaddingL2Pooling2dSize3Test(
288 armnn::IWorkloadFactory& workloadFactory,
289 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
291 LayerTestResult<uint8_t, 4> IgnorePaddingL2Pooling2dSize3Uint8Test(
292 armnn::IWorkloadFactory& workloadFactory,
293 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
295 LayerTestResult<float, 4> AsymmetricNonSquarePooling2dTest(
296 armnn::IWorkloadFactory& workloadFactory,
297 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
299 LayerTestResult<uint8_t, 4> AsymmetricNonSquarePooling2dUint8Test(
300 armnn::IWorkloadFactory& workloadFactory,
301 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
303 LayerTestResult<float, 4> ComparePooling2dTest(
304 armnn::IWorkloadFactory& workloadFactory,
305 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
306 armnn::IWorkloadFactory& refWorkloadFactory,
307 armnn::PoolingAlgorithm poolingType);
309 LayerTestResult<uint8_t, 4> ComparePooling2dUint8Test(
310 armnn::IWorkloadFactory& workloadFactory,
311 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
312 armnn::IWorkloadFactory& refWorkloadFactory,
313 armnn::PoolingAlgorithm poolingType);
315 LayerTestResult<float, 4> ConstantLinearActivationTest(
316 armnn::IWorkloadFactory& workloadFactory,
317 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
319 LayerTestResult<float, 4> SimpleNormalizationAcrossTest(
320 armnn::IWorkloadFactory& workloadFactory,
321 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
323 LayerTestResult<float, 4> SimpleNormalizationWithinTest(
324 armnn::IWorkloadFactory& workloadFactory,
325 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
327 LayerTestResult<float,4> SimpleNormalizationAcrossNhwcTest(
328 armnn::IWorkloadFactory& workloadFactory,
329 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
331 LayerTestResult<float, 2> SimpleSoftmaxTest(
332 armnn::IWorkloadFactory& workloadFactory,
333 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
336 LayerTestResult<uint8_t, 2> SimpleSoftmaxUint8Test(
337 armnn::IWorkloadFactory& workloadFactory,
338 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
341 LayerTestResult<float, 4> SimpleSigmoidTest(
342 armnn::IWorkloadFactory& workloadFactory,
343 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
345 LayerTestResult<float, 4> SimpleReshapeFloat32Test(
346 armnn::IWorkloadFactory& workloadFactory,
347 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
349 LayerTestResult<uint8_t, 4> SimpleReshapeUint8Test(
350 armnn::IWorkloadFactory& workloadFactory,
351 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
353 LayerTestResult<float, 4> SimpleFloorTest(
354 armnn::IWorkloadFactory& workloadFactory,
355 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
357 LayerTestResult<float, 1> Concatenation1dTest(
358 armnn::IWorkloadFactory& workloadFactory,
359 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
361 LayerTestResult<float, 2> Concatenation2dDim0Test(
362 armnn::IWorkloadFactory& workloadFactory,
363 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
365 LayerTestResult<float, 2> Concatenation2dDim1Test(
366 armnn::IWorkloadFactory& workloadFactory,
367 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
369 LayerTestResult<float, 2> Concatenation2dDim0DiffInputDimsTest(
370 armnn::IWorkloadFactory& workloadFactory,
371 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
373 LayerTestResult<float, 2> Concatenation2dDim1DiffInputDimsTest(
374 armnn::IWorkloadFactory& workloadFactory,
375 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
377 LayerTestResult<float, 3> Concatenation3dDim0Test(
378 armnn::IWorkloadFactory& workloadFactory,
379 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
381 LayerTestResult<float, 3> Concatenation3dDim1Test(
382 armnn::IWorkloadFactory& workloadFactory,
383 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
385 LayerTestResult<float, 3> Concatenation3dDim2Test(
386 armnn::IWorkloadFactory& workloadFactory,
387 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
390 LayerTestResult<float, 3> Concatenation3dDim0DiffInputDimsTest(
391 armnn::IWorkloadFactory& workloadFactory,
392 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
394 LayerTestResult<float, 3> Concatenation3dDim1DiffInputDimsTest(
395 armnn::IWorkloadFactory& workloadFactory,
396 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
398 LayerTestResult<float, 3> Concatenation3dDim2DiffInputDimsTest(
399 armnn::IWorkloadFactory& workloadFactory,
400 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
403 LayerTestResult<float, 4> Concatenation4dDim0Test(
404 armnn::IWorkloadFactory& workloadFactory,
405 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
407 LayerTestResult<float, 4> Concatenation4dDim1Test(
408 armnn::IWorkloadFactory& workloadFactory,
409 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
411 LayerTestResult<float, 4> Concatenation4dDim2Test(
412 armnn::IWorkloadFactory& workloadFactory,
413 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
415 LayerTestResult<float, 4> Concatenation4dDim3Test(
416 armnn::IWorkloadFactory& workloadFactory,
417 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
420 LayerTestResult<float, 4> Concatenation4dDiffShapeDim0Test(
421 armnn::IWorkloadFactory& workloadFactory,
422 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
424 LayerTestResult<float, 4> Concatenation4dDiffShapeDim1Test(
425 armnn::IWorkloadFactory& workloadFactory,
426 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
428 LayerTestResult<float, 4> Concatenation4dDiffShapeDim2Test(
429 armnn::IWorkloadFactory& workloadFactory,
430 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
432 LayerTestResult<float, 4> Concatenation4dDiffShapeDim3Test(
433 armnn::IWorkloadFactory& workloadFactory,
434 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
437 LayerTestResult<uint8_t, 4> Concatenation4dDim0Uint8Test(
438 armnn::IWorkloadFactory& workloadFactory,
439 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
441 LayerTestResult<uint8_t, 4> Concatenation4dDim1Uint8Test(
442 armnn::IWorkloadFactory& workloadFactory,
443 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
445 LayerTestResult<uint8_t, 4> Concatenation4dDim2Uint8Test(
446 armnn::IWorkloadFactory& workloadFactory,
447 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
449 LayerTestResult<uint8_t, 4> Concatenation4dDim3Uint8Test(
450 armnn::IWorkloadFactory& workloadFactory,
451 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
454 LayerTestResult<uint8_t, 4> Concatenation4dDiffShapeDim0Uint8Test(
455 armnn::IWorkloadFactory& workloadFactory,
456 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
458 LayerTestResult<uint8_t, 4> Concatenation4dDiffShapeDim1Uint8Test(
459 armnn::IWorkloadFactory& workloadFactory,
460 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
462 LayerTestResult<uint8_t, 4> Concatenation4dDiffShapeDim2Uint8Test(
463 armnn::IWorkloadFactory& workloadFactory,
464 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
466 LayerTestResult<uint8_t, 4> Concatenation4dDiffShapeDim3Uint8Test(
467 armnn::IWorkloadFactory& workloadFactory,
468 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
471 LayerTestResult<uint8_t, 4> SimpleSigmoidUint8Test(
472 armnn::IWorkloadFactory& workloadFactory,
473 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
475 LayerTestResult<float, 4> CompareConvolution2dTest(
476 armnn::IWorkloadFactory& workloadFactory,
477 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
478 armnn::IWorkloadFactory& refWorkloadFactory);
481 LayerTestResult<T, 4> CompareDepthwiseConvolution2dTest(
482 armnn::IWorkloadFactory& workloadFactory,
483 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
484 armnn::IWorkloadFactory& refWorkloadFactory,
485 const armnn::DataLayout layout);
487 LayerTestResult<float, 4> CompareNormalizationTest(
488 armnn::IWorkloadFactory& workloadFactory,
489 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
490 armnn::IWorkloadFactory& refWorkloadFactory,
491 armnn::NormalizationAlgorithmChannel normChannel,
492 armnn::NormalizationAlgorithmMethod normMethod);
494 LayerTestResult<float, 2> CompareSoftmaxTest(
495 armnn::IWorkloadFactory& workloadFactory,
496 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
497 armnn::IWorkloadFactory& refWorkloadFactory,
500 LayerTestResult<float, 2> FullyConnectedFloat32Test(
501 armnn::IWorkloadFactory& workloadFactory,
502 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
504 bool transposeWeights);
506 std::vector<LayerTestResult<float, 3>> SplitterTest(
507 armnn::IWorkloadFactory& workloadFactory,
508 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
510 LayerTestResult<float, 3> CopyViaSplitterTest(
511 armnn::IWorkloadFactory& workloadFactory,
512 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
514 LayerTestResult<float, 3> MergerTest(
515 armnn::IWorkloadFactory& workloadFactory,
516 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
518 LayerTestResult<float, 4> AdditionTest(
519 armnn::IWorkloadFactory& workloadFactory,
520 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
522 LayerTestResult<float, 4> AdditionBroadcast1ElementTest(
523 armnn::IWorkloadFactory& workloadFactory,
524 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
526 LayerTestResult<float, 4> AdditionBroadcastTest(
527 armnn::IWorkloadFactory& workloadFactory,
528 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
530 LayerTestResult<float, 4> CompareAdditionTest(
531 armnn::IWorkloadFactory& workloadFactory,
532 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
533 armnn::IWorkloadFactory& refWorkloadFactory);
535 LayerTestResult<float, 4> SubtractionTest(
536 armnn::IWorkloadFactory& workloadFactory,
537 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
539 LayerTestResult<float, 4> SubtractionBroadcast1ElementTest(
540 armnn::IWorkloadFactory& workloadFactory,
541 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
543 LayerTestResult<float, 4> SubtractionBroadcastTest(
544 armnn::IWorkloadFactory& workloadFactory,
545 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
547 LayerTestResult<float, 4> CompareActivationTest(
548 armnn::IWorkloadFactory& workloadFactory,
549 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
550 armnn::IWorkloadFactory& refWorkloadFactory,
551 armnn::ActivationFunction f,
552 unsigned int batchSize);
554 LayerTestResult<float, 4> DivisionTest(
555 armnn::IWorkloadFactory& workloadFactory,
556 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
558 LayerTestResult<float, 4> DivisionByZeroTest(
559 armnn::IWorkloadFactory& workloadFactory,
560 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
562 LayerTestResult<float, 4> DivisionBroadcast1ElementTest(
563 armnn::IWorkloadFactory& workloadFactory,
564 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
566 LayerTestResult<float, 4> DivisionBroadcast1DVectorTest(
567 armnn::IWorkloadFactory& workloadFactory,
568 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
570 LayerTestResult<float, 4> MultiplicationTest(
571 armnn::IWorkloadFactory& workloadFactory,
572 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
574 LayerTestResult<float, 4> MultiplicationBroadcast1ElementTest(
575 armnn::IWorkloadFactory& workloadFactory,
576 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
578 LayerTestResult<float, 4> MultiplicationBroadcast1DVectorTest(
579 armnn::IWorkloadFactory& workloadFactory,
580 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
582 LayerTestResult<float, 4> CompareMultiplicationTest(
583 armnn::IWorkloadFactory& workloadFactory,
584 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
585 armnn::IWorkloadFactory& refWorkloadFactory);
587 LayerTestResult<float, 4> BatchNormTest(
588 armnn::IWorkloadFactory& workloadFactory,
589 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
591 LayerTestResult<float, 4> BatchNormNhwcTest(
592 armnn::IWorkloadFactory& workloadFactory,
593 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
595 LayerTestResult<float, 4> CompareBatchNormTest(
596 armnn::IWorkloadFactory& workloadFactory,
597 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
598 armnn::IWorkloadFactory& refWorkloadFactory);
600 LayerTestResult<float, 4> BoundedReLuUpperAndLowerBoundTest(
601 armnn::IWorkloadFactory& workloadFactory,
602 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
604 LayerTestResult<uint8_t, 4> BoundedReLuUint8UpperAndLowerBoundTest(
605 armnn::IWorkloadFactory& workloadFactor,
606 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManagery);
608 LayerTestResult<float, 4> BoundedReLuUpperBoundOnlyTest(
609 armnn::IWorkloadFactory& workloadFactory,
610 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
612 LayerTestResult<uint8_t, 4> BoundedReLuUint8UpperBoundOnlyTest(
613 armnn::IWorkloadFactory& workloadFactory,
614 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
616 LayerTestResult<float, 4> CompareBoundedReLuTest(
617 armnn::IWorkloadFactory& workloadFactory,
618 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
619 armnn::IWorkloadFactory& refWorkloadFactory,
623 // Tests that the output should be identical to the input when the output dimensions match the input ones.
624 LayerTestResult<float, 4> ResizeBilinearNopTest(
625 armnn::IWorkloadFactory& workloadFactory,
626 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
627 const armnn::DataLayout dataLayout);
629 // Tests the behaviour of the resize bilinear operation when rescaling a 2x2 image into a 1x1 image.
630 LayerTestResult<float, 4> SimpleResizeBilinearTest(
631 armnn::IWorkloadFactory& workloadFactory,
632 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
633 const armnn::DataLayout dataLayout);
635 // Tests the resize bilinear for minification of a square input matrix (also: input dimensions are a
636 // multiple of output dimensions).
637 LayerTestResult<float, 4> ResizeBilinearSqMinTest(
638 armnn::IWorkloadFactory& workloadFactory,
639 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
640 const armnn::DataLayout dataLayout);
642 // Tests the resize bilinear for minification (output dimensions smaller than input dimensions).
643 LayerTestResult<float, 4> ResizeBilinearMinTest(
644 armnn::IWorkloadFactory& workloadFactory,
645 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
646 const armnn::DataLayout dataLayout);
648 // Tests the resize bilinear for magnification (output dimensions bigger than input dimensions).
649 LayerTestResult<float, 4> ResizeBilinearMagTest(
650 armnn::IWorkloadFactory& workloadFactory,
651 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
652 const armnn::DataLayout dataLayout);
654 LayerTestResult<float, 2> Rsqrt2dTestCommon(
655 armnn::IWorkloadFactory& workloadFactory,
656 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
657 const armnn::TensorInfo inputTensorInfo,
658 const armnn::TensorInfo outputTensorInfo,
659 std::vector<float> inputValues,
660 std::vector<float> expectedOutputValues);
662 LayerTestResult<float, 2> Rsqrt2dTest(
663 armnn::IWorkloadFactory& workloadFactory,
664 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
666 LayerTestResult<float, 3> Rsqrt3dTest(
667 armnn::IWorkloadFactory& workloadFactory,
668 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
670 LayerTestResult<float, 2> RsqrtZeroTest(
671 armnn::IWorkloadFactory& workloadFactory,
672 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
674 LayerTestResult<float, 2> RsqrtNegativeTest(
675 armnn::IWorkloadFactory& workloadFactory,
676 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
678 LayerTestResult<float, 4> BatchNormTest(
679 armnn::IWorkloadFactory& workloadFactory,
680 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
682 LayerTestResult<float, 4> BatchNormNhwcTest(
683 armnn::IWorkloadFactory& workloadFactory,
684 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
686 LayerTestResult<float, 2> FakeQuantizationTest(
687 armnn::IWorkloadFactory& workloadFactory,
688 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
690 LayerTestResult<float, 4> L2Normalization1dTest(
691 armnn::IWorkloadFactory& workloadFactory,
692 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
693 const armnn::DataLayout layout);
695 LayerTestResult<float, 4> L2Normalization2dTest(
696 armnn::IWorkloadFactory& workloadFactory,
697 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
698 const armnn::DataLayout layout);
700 LayerTestResult<float, 4> L2Normalization3dTest(
701 armnn::IWorkloadFactory& workloadFactory,
702 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
703 const armnn::DataLayout layout);
705 LayerTestResult<float, 4> L2Normalization4dTest(
706 armnn::IWorkloadFactory& workloadFactory,
707 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
708 const armnn::DataLayout layout);
710 LayerTestResult<float, 4> ConstantTest(
711 armnn::IWorkloadFactory& workloadFactory,
712 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
714 LayerTestResult<uint8_t, 4> ConstantTestUint8(
715 armnn::IWorkloadFactory& workloadFactory,
716 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
718 LayerTestResult<uint8_t, 4> BoundedReLuUint8Test(
719 armnn::IWorkloadFactory& workloadFactory,
720 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
723 LayerTestResult<uint8_t, 4> BoundedReLuUint8Test(
724 armnn::IWorkloadFactory& workloadFactory,
725 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
729 LayerTestResult<uint8_t, 2> FullyConnectedUint8Test(
730 armnn::IWorkloadFactory& workloadFactory,
731 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
734 std::vector<LayerTestResult<uint8_t, 3>> SplitterUint8Test(
735 armnn::IWorkloadFactory& workloadFactory,
736 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
738 LayerTestResult<uint8_t, 3> CopyViaSplitterUint8Test(
739 armnn::IWorkloadFactory& workloadFactory,
740 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
742 LayerTestResult<uint8_t, 3> MergerUint8Test(
743 armnn::IWorkloadFactory& workloadFactory,
744 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
746 LayerTestResult<uint8_t, 4> AdditionUint8Test(
747 armnn::IWorkloadFactory& workloadFactory,
748 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
750 LayerTestResult<uint8_t, 4> AdditionBroadcast1ElementUint8Test(
751 armnn::IWorkloadFactory& workloadFactory,
752 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
754 LayerTestResult<uint8_t, 4> AdditionBroadcastUint8Test(
755 armnn::IWorkloadFactory& workloadFactory,
756 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
758 LayerTestResult<uint8_t, 4> SubtractionUint8Test(
759 armnn::IWorkloadFactory& workloadFactory,
760 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
762 LayerTestResult<uint8_t, 4> SubtractionBroadcast1ElementUint8Test(
763 armnn::IWorkloadFactory& workloadFactory,
764 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
766 LayerTestResult<uint8_t, 4> SubtractionBroadcastUint8Test(
767 armnn::IWorkloadFactory& workloadFactory,
768 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
770 LayerTestResult<uint8_t, 4> CompareActivationUint8Test(
771 armnn::IWorkloadFactory& workloadFactory,
772 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
773 armnn::IWorkloadFactory& refWorkloadFactory,
774 armnn::ActivationFunction f);
776 LayerTestResult<uint8_t, 2> CompareSoftmaxUint8Test(
777 armnn::IWorkloadFactory& workloadFactory,
778 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
779 armnn::IWorkloadFactory& refWorkloadFactory,
782 LayerTestResult<uint8_t, 4> MultiplicationUint8Test(
783 armnn::IWorkloadFactory& workloadFactory,
784 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
786 LayerTestResult<uint8_t, 4> MultiplicationBroadcast1ElementUint8Test(
787 armnn::IWorkloadFactory& workloadFactory,
788 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
790 LayerTestResult<uint8_t, 4> MultiplicationBroadcast1DVectorUint8Test(
791 armnn::IWorkloadFactory& workloadFactory,
792 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
794 LayerTestResult<uint8_t, 4> DivisionUint8Test(
795 armnn::IWorkloadFactory& workloadFactory,
796 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
798 LayerTestResult<uint8_t, 4> DivisionBroadcast1ElementUint8Test(
799 armnn::IWorkloadFactory& workloadFactory,
800 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
802 LayerTestResult<uint8_t, 4> DivisionBroadcast1DVectorUint8Test(
803 armnn::IWorkloadFactory& workloadFactory,
804 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
806 LayerTestResult<uint8_t, 4> SimpleConvolution2d3x5Uint8Test(
807 armnn::IWorkloadFactory& workloadFactory,
808 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
810 const armnn::DataLayout layout);
812 LayerTestResult<uint8_t, 4> SimpleConvolution2d3x3Uint8Test(
813 armnn::IWorkloadFactory& workloadFactory,
814 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
816 const armnn::DataLayout layout);
818 LayerTestResult<uint8_t, 4> DepthwiseConvolution2dUint8Test(
819 armnn::IWorkloadFactory& workloadFactory,
820 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
822 const armnn::DataLayout layout);
824 LayerTestResult<uint8_t, 4> DepthwiseConvolution2dDepthMul1Uint8Test(
825 armnn::IWorkloadFactory& workloadFactory,
826 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
828 const armnn::DataLayout layout);
830 LayerTestResult<uint8_t, 4> ConstantLinearActivationUint8Test(
831 armnn::IWorkloadFactory& workloadFactory,
832 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
834 LayerTestResult<uint8_t, 4> ResizeBilinearNopUint8Test(
835 armnn::IWorkloadFactory& workloadFactory,
836 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
838 LayerTestResult<uint8_t, 4> SimpleResizeBilinearUint8Test(
839 armnn::IWorkloadFactory& workloadFactory,
840 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
842 LayerTestResult<uint8_t, 4> ResizeBilinearSqMinUint8Test(
843 armnn::IWorkloadFactory& workloadFactory,
844 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
846 LayerTestResult<uint8_t, 4> ResizeBilinearMinUint8Test(
847 armnn::IWorkloadFactory& workloadFactory,
848 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
850 LayerTestResult<uint8_t, 4> ResizeBilinearMagUint8Test(
851 armnn::IWorkloadFactory& workloadFactory,
852 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
854 LayerTestResult<uint8_t, 4> BatchNormUint8Test(
855 armnn::IWorkloadFactory& workloadFactory,
856 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
858 LayerTestResult<uint8_t, 4> BatchNormUint8NhwcTest(
859 armnn::IWorkloadFactory& workloadFactory,
860 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
862 LayerTestResult<uint8_t, 4> ConstantUint8Test(
863 armnn::IWorkloadFactory& workloadFactory,
864 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
866 LayerTestResult<uint8_t, 1> Concatenation1dUint8Test(
867 armnn::IWorkloadFactory& workloadFactory,
868 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
870 LayerTestResult<uint8_t, 2> Concatenation2dDim0Uint8Test(
871 armnn::IWorkloadFactory& workloadFactory,
872 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
874 LayerTestResult<uint8_t, 2> Concatenation2dDim1Uint8Test(
875 armnn::IWorkloadFactory& workloadFactory,
876 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
878 LayerTestResult<uint8_t, 2> Concatenation2dDim0DiffInputDimsUint8Test(
879 armnn::IWorkloadFactory& workloadFactory,
880 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
882 LayerTestResult<uint8_t, 2> Concatenation2dDim1DiffInputDimsUint8Test(
883 armnn::IWorkloadFactory& workloadFactory,
884 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
886 LayerTestResult<uint8_t, 3> Concatenation3dDim0Uint8Test(
887 armnn::IWorkloadFactory& workloadFactory,
888 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
890 LayerTestResult<uint8_t, 3> Concatenation3dDim1Uint8Test(
891 armnn::IWorkloadFactory& workloadFactory,
892 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
894 LayerTestResult<uint8_t, 3> Concatenation3dDim2Uint8Test(
895 armnn::IWorkloadFactory& workloadFactory,
896 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
899 LayerTestResult<uint8_t, 3> Concatenation3dDim0DiffInputDimsUint8Test(
900 armnn::IWorkloadFactory& workloadFactory,
901 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
903 LayerTestResult<uint8_t, 3> Concatenation3dDim1DiffInputDimsUint8Test(
904 armnn::IWorkloadFactory& workloadFactory,
905 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
907 LayerTestResult<uint8_t, 3> Concatenation3dDim2DiffInputDimsUint8Test(
908 armnn::IWorkloadFactory& workloadFactory,
909 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
912 LayerTestResult<float, 4> EqualSimpleTest(
913 armnn::IWorkloadFactory& workloadFactory,
914 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
916 LayerTestResult<float, 4> EqualBroadcast1ElementTest(
917 armnn::IWorkloadFactory& workloadFactory,
918 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
920 LayerTestResult<float, 4> EqualBroadcast1DVectorTest(
921 armnn::IWorkloadFactory& workloadFactory,
922 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
924 LayerTestResult<uint8_t, 4> EqualUint8Test(
925 armnn::IWorkloadFactory& workloadFactory,
926 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
928 LayerTestResult<uint8_t, 4> EqualBroadcast1ElementUint8Test(
929 armnn::IWorkloadFactory& workloadFactory,
930 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
932 LayerTestResult<uint8_t, 4> EqualBroadcast1DVectorUint8Test(
933 armnn::IWorkloadFactory& workloadFactory,
934 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
936 LayerTestResult<float, 4> GreaterSimpleTest(
937 armnn::IWorkloadFactory& workloadFactory,
938 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
940 LayerTestResult<float, 4> GreaterBroadcast1ElementTest(
941 armnn::IWorkloadFactory& workloadFactory,
942 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
944 LayerTestResult<float, 4> GreaterBroadcast1DVectorTest(
945 armnn::IWorkloadFactory& workloadFactory,
946 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
948 LayerTestResult<uint8_t, 4> GreaterUint8Test(
949 armnn::IWorkloadFactory& workloadFactory,
950 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
952 LayerTestResult<uint8_t, 4> GreaterBroadcast1ElementUint8Test(
953 armnn::IWorkloadFactory& workloadFactory,
954 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
956 LayerTestResult<uint8_t, 4> GreaterBroadcast1DVectorUint8Test(
957 armnn::IWorkloadFactory& workloadFactory,
958 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
960 LayerTestResult<float, 2> FullyConnectedLargeTest(
961 armnn::IWorkloadFactory& workloadFactory,
962 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
963 bool transposeWeights);
965 LayerTestResult<float, 4> SimplePermuteFloat32Test(
966 armnn::IWorkloadFactory& workloadFactory,
967 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
969 LayerTestResult<uint8_t, 4> SimplePermuteUint8Test(
970 armnn::IWorkloadFactory& workloadFactory,
971 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
973 LayerTestResult<uint8_t, 2> PadUint82dTest(
974 armnn::IWorkloadFactory& workloadFactory,
975 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
977 LayerTestResult<uint8_t, 3> PadUint83dTest(
978 armnn::IWorkloadFactory& workloadFactory,
979 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
981 LayerTestResult<uint8_t, 4> PadUint84dTest(
982 armnn::IWorkloadFactory& workloadFactory,
983 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
985 LayerTestResult<float, 2> PadFloat322dTest(
986 armnn::IWorkloadFactory& workloadFactory,
987 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
989 LayerTestResult<float, 3> PadFloat323dTest(
990 armnn::IWorkloadFactory& workloadFactory,
991 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
993 LayerTestResult<float, 4> PadFloat324dTest(
994 armnn::IWorkloadFactory& workloadFactory,
995 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
997 LayerTestResult<float, 4> PermuteFloat32ValueSet1Test(
998 armnn::IWorkloadFactory& workloadFactory,
999 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
1001 LayerTestResult<float, 4> PermuteFloat32ValueSet2Test(
1002 armnn::IWorkloadFactory& workloadFactory,
1003 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
1005 LayerTestResult<float, 4> PermuteFloat32ValueSet3Test(
1006 armnn::IWorkloadFactory& workloadFactory,
1007 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
1009 LayerTestResult<float, 2> LstmLayerFloat32WithCifgWithPeepholeNoProjectionTest(
1010 armnn::IWorkloadFactory& workloadFactory,
1011 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
1013 LayerTestResult<float, 2> LstmLayerFloat32NoCifgNoPeepholeNoProjectionTest(
1014 armnn::IWorkloadFactory& workloadFactory,
1015 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
1017 LayerTestResult<float, 2> LstmLayerFloat32NoCifgWithPeepholeWithProjectionTest(
1018 armnn::IWorkloadFactory& workloadFactory,
1019 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
1021 LayerTestResult<float, 4> SimpleConvertFp16ToFp32Test(
1022 armnn::IWorkloadFactory& workloadFactory,
1023 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
1025 LayerTestResult<armnn::Half, 4> SimpleConvertFp32ToFp16Test(
1026 armnn::IWorkloadFactory& workloadFactory,
1027 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
1029 LayerTestResult<float, 4> MaximumSimpleTest(
1030 armnn::IWorkloadFactory& workloadFactory,
1031 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
1033 LayerTestResult<float, 4> MaximumBroadcast1ElementTest(
1034 armnn::IWorkloadFactory& workloadFactory,
1035 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
1037 LayerTestResult<float, 4> MaximumBroadcast1DVectorTest(
1038 armnn::IWorkloadFactory& workloadFactory,
1039 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
1041 LayerTestResult<uint8_t , 4> MaximumUint8Test(
1042 armnn::IWorkloadFactory& workloadFactory,
1043 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
1045 LayerTestResult<uint8_t, 4> MaximumBroadcast1ElementUint8Test(
1046 armnn::IWorkloadFactory& workloadFactory,
1047 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
1049 LayerTestResult<uint8_t, 4> MaximumBroadcast1DVectorUint8Test(
1050 armnn::IWorkloadFactory& workloadFactory,
1051 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
1053 LayerTestResult<uint8_t, 1> MeanUint8SimpleTest(
1054 armnn::IWorkloadFactory& workloadFactory,
1055 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
1057 LayerTestResult<uint8_t, 3> MeanUint8SimpleAxisTest(
1058 armnn::IWorkloadFactory& workloadFactory,
1059 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
1061 LayerTestResult<uint8_t, 4> MeanUint8KeepDimsTest(
1062 armnn::IWorkloadFactory& workloadFactory,
1063 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
1065 LayerTestResult<uint8_t, 4> MeanUint8MultipleDimsTest(
1066 armnn::IWorkloadFactory& workloadFactory,
1067 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
1069 LayerTestResult<uint8_t, 1> MeanVtsUint8Test(
1070 armnn::IWorkloadFactory& workloadFactory,
1071 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
1073 LayerTestResult<float, 1> MeanFloatSimpleTest(
1074 armnn::IWorkloadFactory& workloadFactory,
1075 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
1077 LayerTestResult<float, 3> MeanFloatSimpleAxisTest(
1078 armnn::IWorkloadFactory& workloadFactory,
1079 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
1081 LayerTestResult<float, 4> MeanFloatKeepDimsTest(
1082 armnn::IWorkloadFactory& workloadFactory,
1083 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
1085 LayerTestResult<float, 4> MeanFloatMultipleDimsTest(
1086 armnn::IWorkloadFactory& workloadFactory,
1087 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
1089 LayerTestResult<float, 1> MeanVtsFloat1Test(
1090 armnn::IWorkloadFactory& workloadFactory,
1091 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
1093 LayerTestResult<float, 3> MeanVtsFloat2Test(
1094 armnn::IWorkloadFactory& workloadFactory,
1095 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
1097 LayerTestResult<float, 3> MeanVtsFloat3Test(
1098 armnn::IWorkloadFactory& workloadFactory,
1099 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
1101 LayerTestResult<float, 4> MinimumBroadcast1ElementTest1(
1102 armnn::IWorkloadFactory& workloadFactory,
1103 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
1105 LayerTestResult<float, 4> MinimumBroadcast1ElementTest2(
1106 armnn::IWorkloadFactory& workloadFactory,
1107 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
1109 LayerTestResult<uint8_t, 4> MinimumBroadcast1DVectorUint8Test(
1110 armnn::IWorkloadFactory & workloadFactory,
1111 const armnn::IBackendInternal::IMemoryManagerSharedPtr & memoryManager);
1113 LayerTestResult<float, 4> AdditionAfterMaxPoolTest(
1114 armnn::IWorkloadFactory& workloadFactory,
1115 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
1117 LayerTestResult<float, 4> SpaceToBatchNdSimpleFloat32Test(
1118 armnn::IWorkloadFactory& workloadFactory,
1119 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
1121 LayerTestResult<float, 4> SpaceToBatchNdMultiChannelsFloat32Test(
1122 armnn::IWorkloadFactory& workloadFactory,
1123 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
1125 LayerTestResult<float, 4> SpaceToBatchNdMultiBlockFloat32Test(
1126 armnn::IWorkloadFactory& workloadFactory,
1127 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
1129 LayerTestResult<float, 4> SpaceToBatchNdPaddingFloat32Test(
1130 armnn::IWorkloadFactory& workloadFactory,
1131 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
1133 LayerTestResult<uint8_t, 4> SpaceToBatchNdSimpleUint8Test(
1134 armnn::IWorkloadFactory& workloadFactory,
1135 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
1137 LayerTestResult<uint8_t, 4> SpaceToBatchNdMultiChannelsUint8Test(
1138 armnn::IWorkloadFactory& workloadFactory,
1139 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
1141 LayerTestResult<uint8_t, 4> SpaceToBatchNdMultiBlockUint8Test(
1142 armnn::IWorkloadFactory& workloadFactory,
1143 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
1145 LayerTestResult<uint8_t, 4> SpaceToBatchNdPaddingUint8Test(
1146 armnn::IWorkloadFactory& workloadFactory,
1147 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
1149 LayerTestResult<float, 4> SpaceToBatchNdSimpleNHWCFloat32Test(
1150 armnn::IWorkloadFactory& workloadFactory,
1151 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
1153 LayerTestResult<float, 4> SpaceToBatchNdMultiChannelsNHWCFloat32Test(
1154 armnn::IWorkloadFactory& workloadFactory,
1155 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
1157 LayerTestResult<float, 4> SpaceToBatchNdMultiBlockNHWCFloat32Test(
1158 armnn::IWorkloadFactory& workloadFactory,
1159 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
1161 LayerTestResult<float, 4> SpaceToBatchNdPaddingNHWCFloat32Test(
1162 armnn::IWorkloadFactory& workloadFactory,
1163 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
1165 LayerTestResult<uint8_t, 4> SpaceToBatchNdSimpleNHWCUint8Test(
1166 armnn::IWorkloadFactory& workloadFactory,
1167 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
1169 LayerTestResult<uint8_t, 4> SpaceToBatchNdMultiChannelsNHWCUint8Test(
1170 armnn::IWorkloadFactory& workloadFactory,
1171 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
1173 LayerTestResult<uint8_t, 4> SpaceToBatchNdMultiBlockNHWCUint8Test(
1174 armnn::IWorkloadFactory& workloadFactory,
1175 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
1177 LayerTestResult<uint8_t, 4> SpaceToBatchNdPaddingNHWCUint8Test(
1178 armnn::IWorkloadFactory& workloadFactory,
1179 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
1181 LayerTestResult<float, 4> BatchToSpaceNdNhwcFloat32Test1(
1182 armnn::IWorkloadFactory& workloadFactory,
1183 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
1185 LayerTestResult<float, 4> BatchToSpaceNdNhwcFloat32Test2(
1186 armnn::IWorkloadFactory& workloadFactory,
1187 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
1189 LayerTestResult<float, 4> BatchToSpaceNdNhwcFloat32Test3(
1190 armnn::IWorkloadFactory& workloadFactory,
1191 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
1193 LayerTestResult<float, 4> BatchToSpaceNdNchwFloat32Test1(
1194 armnn::IWorkloadFactory &workloadFactory,
1195 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
1197 LayerTestResult<float, 4> BatchToSpaceNdNchwFloat32Test2(
1198 armnn::IWorkloadFactory &workloadFactory,
1199 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
1201 LayerTestResult<float, 4> BatchToSpaceNdNchwFloat32Test3(
1202 armnn::IWorkloadFactory &workloadFactory,
1203 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
1205 LayerTestResult<uint8_t, 4> BatchToSpaceNdNhwcUintTest1(
1206 armnn::IWorkloadFactory &workloadFactory,
1207 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
1209 LayerTestResult<uint8_t, 4> BatchToSpaceNdNhwcUintTest2(
1210 armnn::IWorkloadFactory &workloadFactory,
1211 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
1213 LayerTestResult<uint8_t, 4> BatchToSpaceNdNhwcUintTest3(
1214 armnn::IWorkloadFactory &workloadFactory,
1215 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
1217 LayerTestResult<uint8_t, 4> BatchToSpaceNdNchwUintTest1(
1218 armnn::IWorkloadFactory &workloadFactory,
1219 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
1221 LayerTestResult<uint8_t, 4> BatchToSpaceNdNchwUintTest2(
1222 armnn::IWorkloadFactory &workloadFactory,
1223 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
1225 LayerTestResult<uint8_t, 4> BatchToSpaceNdNchwUintTest3(
1226 armnn::IWorkloadFactory &workloadFactory,
1227 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
1229 LayerTestResult<float, 4> StridedSlice4DFloat32Test(
1230 armnn::IWorkloadFactory& workloadFactory,
1231 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
1233 LayerTestResult<float, 4> StridedSlice4DReverseFloat32Test(
1234 armnn::IWorkloadFactory& workloadFactory,
1235 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
1237 LayerTestResult<float, 4> StridedSliceSimpleStrideFloat32Test(
1238 armnn::IWorkloadFactory& workloadFactory,
1239 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
1241 LayerTestResult<float, 4> StridedSliceSimpleRangeMaskFloat32Test(
1242 armnn::IWorkloadFactory& workloadFactory,
1243 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
1245 LayerTestResult<float, 2> StridedSliceShrinkAxisMaskFloat32Test(
1246 armnn::IWorkloadFactory& workloadFactory,
1247 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
1249 LayerTestResult<float, 3> StridedSlice3DFloat32Test(
1250 armnn::IWorkloadFactory& workloadFactory,
1251 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
1253 LayerTestResult<float, 3> StridedSlice3DReverseFloat32Test(
1254 armnn::IWorkloadFactory& workloadFactory,
1255 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
1257 LayerTestResult<float, 2> StridedSlice2DFloat32Test(
1258 armnn::IWorkloadFactory& workloadFactory,
1259 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
1261 LayerTestResult<float, 2> StridedSlice2DReverseFloat32Test(
1262 armnn::IWorkloadFactory& workloadFactory,
1263 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
1265 LayerTestResult<uint8_t, 4> StridedSlice4DUint8Test(
1266 armnn::IWorkloadFactory& workloadFactory,
1267 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
1269 LayerTestResult<uint8_t, 4> StridedSlice4DReverseUint8Test(
1270 armnn::IWorkloadFactory& workloadFactory,
1271 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
1273 LayerTestResult<uint8_t, 4> StridedSliceSimpleStrideUint8Test(
1274 armnn::IWorkloadFactory& workloadFactory,
1275 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
1277 LayerTestResult<uint8_t, 4> StridedSliceSimpleRangeMaskUint8Test(
1278 armnn::IWorkloadFactory& workloadFactory,
1279 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
1281 LayerTestResult<uint8_t, 2> StridedSliceShrinkAxisMaskUint8Test(
1282 armnn::IWorkloadFactory& workloadFactory,
1283 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
1285 LayerTestResult<uint8_t, 3> StridedSlice3DUint8Test(
1286 armnn::IWorkloadFactory& workloadFactory,
1287 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
1289 LayerTestResult<uint8_t, 3> StridedSlice3DReverseUint8Test(
1290 armnn::IWorkloadFactory& workloadFactory,
1291 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
1293 LayerTestResult<uint8_t, 2> StridedSlice2DUint8Test(
1294 armnn::IWorkloadFactory& workloadFactory,
1295 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
1297 LayerTestResult<uint8_t, 2> StridedSlice2DReverseUint8Test(
1298 armnn::IWorkloadFactory& workloadFactory,
1299 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
1301 LayerTestResult<float, 4> Debug4DFloat32Test(
1302 armnn::IWorkloadFactory& workloadFactory,
1303 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
1305 LayerTestResult<float, 3> Debug3DFloat32Test(
1306 armnn::IWorkloadFactory& workloadFactory,
1307 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
1309 LayerTestResult<float, 2> Debug2DFloat32Test(
1310 armnn::IWorkloadFactory& workloadFactory,
1311 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
1313 LayerTestResult<float, 1> Debug1DFloat32Test(
1314 armnn::IWorkloadFactory& workloadFactory,
1315 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
1317 LayerTestResult<uint8_t, 4> Debug4DUint8Test(
1318 armnn::IWorkloadFactory& workloadFactory,
1319 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
1321 LayerTestResult<uint8_t, 3> Debug3DUint8Test(
1322 armnn::IWorkloadFactory& workloadFactory,
1323 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
1325 LayerTestResult<uint8_t, 2> Debug2DUint8Test(
1326 armnn::IWorkloadFactory& workloadFactory,
1327 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
1329 LayerTestResult<uint8_t, 1> Debug1DUint8Test(
1330 armnn::IWorkloadFactory& workloadFactory,
1331 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
1333 LayerTestResult<uint8_t, 4> PreCompiledConvolution2dTest(
1334 armnn::IWorkloadFactory& workloadFactory,
1335 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
1337 LayerTestResult<uint8_t, 4> PreCompiledConvolution2dStride2x2Test(
1338 armnn::IWorkloadFactory& workloadFactory,
1339 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
1341 LayerTestResult<uint8_t, 4> PreCompiledDepthwiseConvolution2dTest(
1342 armnn::IWorkloadFactory & workloadFactory,
1343 const armnn::IBackendInternal::IMemoryManagerSharedPtr & memoryManager);
1345 LayerTestResult<uint8_t, 4> PreCompiledDepthwiseConvolution2dStride2x2Test(
1346 armnn::IWorkloadFactory & workloadFactory,
1347 const armnn::IBackendInternal::IMemoryManagerSharedPtr & memoryManager);
1349 LayerTestResult<uint8_t, 4> PreCompiledMaxPooling2dTest(
1350 armnn::IWorkloadFactory& workloadFactory,
1351 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
1353 LayerTestResult<float, 4> Debug4DFloat32Test(
1354 armnn::IWorkloadFactory& workloadFactory,
1355 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
1357 LayerTestResult<float, 3> Debug3DFloat32Test(
1358 armnn::IWorkloadFactory& workloadFactory,
1359 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
1361 LayerTestResult<float, 2> Debug2DFloat32Test(
1362 armnn::IWorkloadFactory& workloadFactory,
1363 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
1365 LayerTestResult<float, 1> Debug1DFloat32Test(
1366 armnn::IWorkloadFactory& workloadFactory,
1367 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
1369 LayerTestResult<uint8_t, 4> Debug4DUint8Test(
1370 armnn::IWorkloadFactory& workloadFactory,
1371 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
1373 LayerTestResult<uint8_t, 3> Debug3DUint8Test(
1374 armnn::IWorkloadFactory& workloadFactory,
1375 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
1377 LayerTestResult<uint8_t, 2> Debug2DUint8Test(
1378 armnn::IWorkloadFactory& workloadFactory,
1379 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
1381 LayerTestResult<uint8_t, 1> Debug1DUint8Test(
1382 armnn::IWorkloadFactory& workloadFactory,
1383 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);