ArmNN
 20.02
StackTestImpl.cpp File Reference

Go to the source code of this file.

Functions

template<armnn::DataType ArmnnType, typename T = armnn::ResolveType<ArmnnType>>
LayerTestResult< T, 4 > StackAxis0TestImpl (armnn::IWorkloadFactory &workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr &memoryManager)
 
template<armnn::DataType ArmnnType, typename T = armnn::ResolveType<ArmnnType>>
LayerTestResult< T, 4 > StackOutput4DAxis1TestImpl (armnn::IWorkloadFactory &workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr &memoryManager)
 
template<armnn::DataType ArmnnType, typename T = armnn::ResolveType<ArmnnType>>
LayerTestResult< T, 4 > StackOutput4DAxis2TestImpl (armnn::IWorkloadFactory &workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr &memoryManager)
 
template<armnn::DataType ArmnnType, typename T = armnn::ResolveType<ArmnnType>>
LayerTestResult< T, 4 > StackOutput4DAxis3TestImpl (armnn::IWorkloadFactory &workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr &memoryManager)
 
template<armnn::DataType ArmnnType, typename T = armnn::ResolveType<ArmnnType>>
LayerTestResult< T, 3 > StackOutput3DInputs3TestImpl (armnn::IWorkloadFactory &workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr &memoryManager)
 
template<armnn::DataType ArmnnType, typename T = armnn::ResolveType<ArmnnType>>
LayerTestResult< T, 5 > StackOutput5DTestImpl (armnn::IWorkloadFactory &workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr &memoryManager)
 
LayerTestResult< float, 4 > StackAxis0Float32Test (armnn::IWorkloadFactory &workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr &memoryManager)
 
LayerTestResult< float, 4 > StackOutput4DAxis1Float32Test (armnn::IWorkloadFactory &workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr &memoryManager)
 
LayerTestResult< float, 4 > StackOutput4DAxis2Float32Test (armnn::IWorkloadFactory &workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr &memoryManager)
 
LayerTestResult< float, 4 > StackOutput4DAxis3Float32Test (armnn::IWorkloadFactory &workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr &memoryManager)
 
LayerTestResult< float, 3 > StackOutput3DInputs3Float32Test (armnn::IWorkloadFactory &workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr &memoryManager)
 
LayerTestResult< float, 5 > StackOutput5DFloat32Test (armnn::IWorkloadFactory &workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr &memoryManager)
 
LayerTestResult< armnn::Half, 4 > StackFloat16Test (armnn::IWorkloadFactory &workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr &memoryManager)
 

Function Documentation

◆ StackAxis0Float32Test()

LayerTestResult<float, 4> StackAxis0Float32Test ( armnn::IWorkloadFactory workloadFactory,
const armnn::IBackendInternal::IMemoryManagerSharedPtr memoryManager 
)

Definition at line 504 of file StackTestImpl.cpp.

Referenced by BOOST_AUTO_TEST_CASE().

507 {
508  return StackAxis0TestImpl<armnn::DataType::Float32>(workloadFactory, memoryManager);
509 }

◆ StackAxis0TestImpl()

LayerTestResult<T, 4> StackAxis0TestImpl ( armnn::IWorkloadFactory workloadFactory,
const armnn::IBackendInternal::IMemoryManagerSharedPtr memoryManager 
)

Definition at line 84 of file StackTestImpl.cpp.

87 {
88  armnn::TensorInfo inputTensorInfo ({ 3, 2, 3 }, ArmnnType);
89  armnn::TensorInfo outputTensorInfo({ 2, 3, 2, 3 }, ArmnnType);
90 
91  std::vector<std::vector<T>> inputData;
92 
93  inputData.push_back(
94  {
95  1, 2, 3,
96  4, 5, 6,
97 
98  7, 8, 9,
99  10, 11, 12,
100 
101  13, 14, 15,
102  16, 17, 18
103  });
104 
105  inputData.push_back(
106  {
107  19, 20, 21,
108  22, 23, 24,
109 
110  25, 26, 27,
111  28, 29, 30,
112 
113  31, 32, 33,
114  34, 35, 36
115  });
116 
117  std::vector<T> outputExpectedData =
118  {
119  1, 2, 3,
120  4, 5, 6,
121 
122  7, 8, 9,
123  10, 11, 12,
124 
125  13, 14, 15,
126  16, 17, 18,
127 
128 
129  19, 20, 21,
130  22, 23, 24,
131 
132  25, 26, 27,
133  28, 29, 30,
134 
135  31, 32, 33,
136  34, 35, 36
137  };
138 
139  return StackTestHelper<ArmnnType, T, 4>(
140  workloadFactory,
141  memoryManager,
142  inputTensorInfo,
143  outputTensorInfo,
144  0U,
145  inputData,
146  outputExpectedData
147  );
148 }

◆ StackFloat16Test()

LayerTestResult<armnn::Half, 4> StackFloat16Test ( armnn::IWorkloadFactory workloadFactory,
const armnn::IBackendInternal::IMemoryManagerSharedPtr memoryManager 
)

Definition at line 546 of file StackTestImpl.cpp.

References armnn::Float16.

Referenced by BOOST_AUTO_TEST_CASE().

549 {
550  using namespace half_float::literal;
551 
552  armnn::TensorInfo inputTensorInfo ({ 3, 2, 3 }, armnn::DataType::Float16);
553  armnn::TensorInfo outputTensorInfo({ 3, 2, 2, 3 }, armnn::DataType::Float16);
554 
555  std::vector<std::vector<armnn::Half>> inputData;
556 
557  inputData.push_back(
558  {
559  1.0_h, 2.0_h, 3.0_h,
560  4.0_h, 5.0_h, 6.0_h,
561 
562  7.0_h, 8.0_h, 9.0_h,
563  10.0_h, 11.0_h, 12.0_h,
564 
565  13.0_h, 14.0_h, 15.0_h,
566  16.0_h, 17.0_h, 18.0_h
567  });
568 
569  inputData.push_back(
570  {
571  19.0_h, 20.0_h, 21.0_h,
572  22.0_h, 23.0_h, 24.0_h,
573 
574  25.0_h, 26.0_h, 27.0_h,
575  28.0_h, 29.0_h, 30.0_h,
576 
577  31.0_h, 32.0_h, 33.0_h,
578  34.0_h, 35.0_h, 36.0_h
579  });
580 
581  std::vector<armnn::Half> outputExpectedData =
582  {
583  1.0_h, 2.0_h, 3.0_h,
584  19.0_h, 20.0_h, 21.0_h,
585 
586  4.0_h, 5.0_h, 6.0_h,
587  22.0_h, 23.0_h, 24.0_h,
588 
589  7.0_h, 8.0_h, 9.0_h,
590  25.0_h, 26.0_h, 27.0_h,
591 
592  10.0_h, 11.0_h, 12.0_h,
593  28.0_h, 29.0_h, 30.0_h,
594 
595  13.0_h, 14.0_h, 15.0_h,
596  31.0_h, 32.0_h, 33.0_h,
597 
598  16.0_h, 17.0_h, 18.0_h,
599  34.0_h, 35.0_h, 36.0_h
600  };
601 
602  return StackTestHelper<armnn::DataType::Float16, armnn::Half, 4>(
603  workloadFactory,
604  memoryManager,
605  inputTensorInfo,
606  outputTensorInfo,
607  2U,
608  inputData,
609  outputExpectedData
610  );
611 }

◆ StackOutput3DInputs3Float32Test()

LayerTestResult<float, 3> StackOutput3DInputs3Float32Test ( armnn::IWorkloadFactory workloadFactory,
const armnn::IBackendInternal::IMemoryManagerSharedPtr memoryManager 
)

Definition at line 532 of file StackTestImpl.cpp.

Referenced by BOOST_AUTO_TEST_CASE().

535 {
536  return StackOutput3DInputs3TestImpl<armnn::DataType::Float32>(workloadFactory, memoryManager);
537 }

◆ StackOutput3DInputs3TestImpl()

LayerTestResult<T, 3> StackOutput3DInputs3TestImpl ( armnn::IWorkloadFactory workloadFactory,
const armnn::IBackendInternal::IMemoryManagerSharedPtr memoryManager 
)

Definition at line 359 of file StackTestImpl.cpp.

362 {
363  armnn::TensorInfo inputTensorInfo ({ 3, 3 }, ArmnnType);
364  armnn::TensorInfo outputTensorInfo({ 3, 3, 3 }, ArmnnType);
365 
366  std::vector<std::vector<T>> inputData;
367 
368  inputData.push_back(
369  {
370  1, 2, 3,
371  4, 5, 6,
372  7, 8, 9
373  });
374 
375  inputData.push_back(
376  {
377  10, 11, 12,
378  13, 14, 15,
379  16, 17, 18
380  });
381 
382  inputData.push_back(
383  {
384  19, 20, 21,
385  22, 23, 24,
386  25, 26, 27
387  });
388 
389  std::vector<T> outputExpectedData =
390  {
391  1, 2, 3,
392  10, 11, 12,
393  19, 20, 21,
394 
395  4, 5, 6,
396  13, 14, 15,
397  22, 23, 24,
398 
399  7, 8, 9,
400  16, 17, 18,
401  25, 26, 27
402  };
403 
404  return StackTestHelper<ArmnnType, T, 3>(
405  workloadFactory,
406  memoryManager,
407  inputTensorInfo,
408  outputTensorInfo,
409  1U,
410  inputData,
411  outputExpectedData
412  );
413 }

◆ StackOutput4DAxis1Float32Test()

LayerTestResult<float, 4> StackOutput4DAxis1Float32Test ( armnn::IWorkloadFactory workloadFactory,
const armnn::IBackendInternal::IMemoryManagerSharedPtr memoryManager 
)

Definition at line 511 of file StackTestImpl.cpp.

Referenced by BOOST_AUTO_TEST_CASE().

514 {
515  return StackOutput4DAxis1TestImpl<armnn::DataType::Float32>(workloadFactory, memoryManager);
516 }

◆ StackOutput4DAxis1TestImpl()

LayerTestResult<T, 4> StackOutput4DAxis1TestImpl ( armnn::IWorkloadFactory workloadFactory,
const armnn::IBackendInternal::IMemoryManagerSharedPtr memoryManager 
)

Definition at line 151 of file StackTestImpl.cpp.

154 {
155  armnn::TensorInfo inputTensorInfo ({ 3, 2, 3 }, ArmnnType);
156  armnn::TensorInfo outputTensorInfo({ 3, 2, 2, 3 }, ArmnnType);
157 
158  std::vector<std::vector<T>> inputData;
159 
160  inputData.push_back(
161  {
162  1, 2, 3,
163  4, 5, 6,
164 
165  7, 8, 9,
166  10, 11, 12,
167 
168  13, 14, 15,
169  16, 17, 18
170  });
171 
172  inputData.push_back(
173  {
174  19, 20, 21,
175  22, 23, 24,
176 
177  25, 26, 27,
178  28, 29, 30,
179 
180  31, 32, 33,
181  34, 35, 36
182  });
183 
184  std::vector<T> outputExpectedData =
185  {
186  1, 2, 3,
187  4, 5, 6,
188 
189  19, 20, 21,
190  22, 23, 24,
191 
192 
193  7, 8, 9,
194  10, 11, 12,
195 
196  25, 26, 27,
197  28, 29, 30,
198 
199 
200  13, 14, 15,
201  16, 17, 18,
202 
203  31, 32, 33,
204  34, 35, 36
205  };
206 
207  return StackTestHelper<ArmnnType, T, 4>(
208  workloadFactory,
209  memoryManager,
210  inputTensorInfo,
211  outputTensorInfo,
212  1U,
213  inputData,
214  outputExpectedData
215  );
216 }

◆ StackOutput4DAxis2Float32Test()

LayerTestResult<float, 4> StackOutput4DAxis2Float32Test ( armnn::IWorkloadFactory workloadFactory,
const armnn::IBackendInternal::IMemoryManagerSharedPtr memoryManager 
)

Definition at line 518 of file StackTestImpl.cpp.

Referenced by BOOST_AUTO_TEST_CASE().

521 {
522  return StackOutput4DAxis2TestImpl<armnn::DataType::Float32>(workloadFactory, memoryManager);
523 }

◆ StackOutput4DAxis2TestImpl()

LayerTestResult<T, 4> StackOutput4DAxis2TestImpl ( armnn::IWorkloadFactory workloadFactory,
const armnn::IBackendInternal::IMemoryManagerSharedPtr memoryManager 
)

Definition at line 219 of file StackTestImpl.cpp.

222 {
223  armnn::TensorInfo inputTensorInfo ({ 3, 2, 3 }, ArmnnType);
224  armnn::TensorInfo outputTensorInfo({ 3, 2, 2, 3 }, ArmnnType);
225 
226  std::vector<std::vector<T>> inputData;
227 
228  inputData.push_back(
229  {
230  1, 2, 3,
231  4, 5, 6,
232 
233  7, 8, 9,
234  10, 11, 12,
235 
236  13, 14, 15,
237  16, 17, 18
238  });
239 
240  inputData.push_back(
241  {
242  19, 20, 21,
243  22, 23, 24,
244 
245  25, 26, 27,
246  28, 29, 30,
247 
248  31, 32, 33,
249  34, 35, 36
250  });
251 
252  std::vector<T> outputExpectedData =
253  {
254  1, 2, 3,
255  19, 20, 21,
256 
257  4, 5, 6,
258  22, 23, 24,
259 
260  7, 8, 9,
261  25, 26, 27,
262 
263  10, 11, 12,
264  28, 29, 30,
265 
266  13, 14, 15,
267  31, 32, 33,
268 
269  16, 17, 18,
270  34, 35, 36
271  };
272 
273  return StackTestHelper<ArmnnType, T, 4>(
274  workloadFactory,
275  memoryManager,
276  inputTensorInfo,
277  outputTensorInfo,
278  2U,
279  inputData,
280  outputExpectedData
281  );
282 }

◆ StackOutput4DAxis3Float32Test()

LayerTestResult<float, 4> StackOutput4DAxis3Float32Test ( armnn::IWorkloadFactory workloadFactory,
const armnn::IBackendInternal::IMemoryManagerSharedPtr memoryManager 
)

Definition at line 525 of file StackTestImpl.cpp.

Referenced by BOOST_AUTO_TEST_CASE().

528 {
529  return StackOutput4DAxis3TestImpl<armnn::DataType::Float32>(workloadFactory, memoryManager);
530 }

◆ StackOutput4DAxis3TestImpl()

LayerTestResult<T, 4> StackOutput4DAxis3TestImpl ( armnn::IWorkloadFactory workloadFactory,
const armnn::IBackendInternal::IMemoryManagerSharedPtr memoryManager 
)

Definition at line 285 of file StackTestImpl.cpp.

288 {
289  armnn::TensorInfo inputTensorInfo ({ 3, 2, 3 }, ArmnnType);
290  armnn::TensorInfo outputTensorInfo({ 3, 2, 3, 2 }, ArmnnType);
291 
292  std::vector<std::vector<T>> inputData;
293 
294  inputData.push_back(
295  {
296  1, 2, 3,
297  4, 5, 6,
298 
299  7, 8, 9,
300  10, 11, 12,
301 
302  13, 14, 15,
303  16, 17, 18
304  });
305 
306  inputData.push_back(
307  {
308  19, 20, 21,
309  22, 23, 24,
310 
311  25, 26, 27,
312  28, 29, 30,
313 
314  31, 32, 33,
315  34, 35, 36
316  });
317 
318  std::vector<T> outputExpectedData =
319  {
320  1, 19,
321  2, 20,
322  3, 21,
323 
324  4, 22,
325  5, 23,
326  6, 24,
327 
328 
329  7, 25,
330  8, 26,
331  9, 27,
332 
333  10, 28,
334  11, 29,
335  12, 30,
336 
337 
338  13, 31,
339  14, 32,
340  15, 33,
341 
342  16, 34,
343  17, 35,
344  18, 36
345  };
346 
347  return StackTestHelper<ArmnnType, T, 4>(
348  workloadFactory,
349  memoryManager,
350  inputTensorInfo,
351  outputTensorInfo,
352  3U,
353  inputData,
354  outputExpectedData
355  );
356 }

◆ StackOutput5DFloat32Test()

LayerTestResult<float, 5> StackOutput5DFloat32Test ( armnn::IWorkloadFactory workloadFactory,
const armnn::IBackendInternal::IMemoryManagerSharedPtr memoryManager 
)

Definition at line 539 of file StackTestImpl.cpp.

Referenced by BOOST_AUTO_TEST_CASE().

542 {
543  return StackOutput5DTestImpl<armnn::DataType::Float32>(workloadFactory, memoryManager);
544 }

◆ StackOutput5DTestImpl()

LayerTestResult<T, 5> StackOutput5DTestImpl ( armnn::IWorkloadFactory workloadFactory,
const armnn::IBackendInternal::IMemoryManagerSharedPtr memoryManager 
)

Definition at line 416 of file StackTestImpl.cpp.

419 {
420  armnn::TensorInfo inputTensorInfo ({ 2, 2, 2, 3 }, ArmnnType);
421  armnn::TensorInfo outputTensorInfo({ 2, 2, 2, 2, 3 }, ArmnnType);
422 
423  std::vector<std::vector<T>> inputData;
424 
425  inputData.push_back(
426  {
427  1, 2, 3,
428  4, 5, 6,
429 
430  7, 8, 9,
431  10, 11, 12,
432 
433 
434  13, 14, 15,
435  16, 17, 18,
436 
437  19, 20, 21,
438  22, 23, 24
439  });
440 
441  inputData.push_back(
442  {
443  25, 26, 27,
444  28, 29, 30,
445 
446  31, 32, 33,
447  34, 35, 36,
448 
449 
450  37, 38, 39,
451  40, 41, 42,
452 
453  43, 44, 45,
454  46, 47, 48
455  });
456 
457  std::vector<T> outputExpectedData =
458  {
459  1, 2, 3,
460  4, 5, 6,
461 
462  7, 8, 9,
463  10, 11, 12,
464 
465 
466  25, 26, 27,
467  28, 29, 30,
468 
469  31, 32, 33,
470  34, 35, 36,
471 
472 
473 
474  13, 14, 15,
475  16, 17, 18,
476 
477  19, 20, 21,
478  22, 23, 24,
479 
480 
481  37, 38, 39,
482  40, 41, 42,
483 
484  43, 44, 45,
485  46, 47, 48
486 
487  };
488 
489  return StackTestHelper<ArmnnType, T, 5>(
490  workloadFactory,
491  memoryManager,
492  inputTensorInfo,
493  outputTensorInfo,
494  1U,
495  inputData,
496  outputExpectedData
497  );
498 }