20 template<
typename T, std::
size_t InDim, std::
size_t OutDim>
26 std::vector<float>& inputData,
27 std::vector<float>& outputExpectedData,
29 const float qScale = 1.0f,
30 const int32_t qOffset = 0)
33 if(armnn::IsQuantizedType<T>())
42 boost::multi_array<T, InDim> input =
43 MakeTensor<T, InDim>(inputTensorInfo, armnnUtils::QuantizedVector<T>(inputData, qScale, qOffset));
47 MakeTensor<T, OutDim>(outputTensorInfo, armnnUtils::QuantizedVector<T>(outputExpectedData, qScale, qOffset));
49 std::unique_ptr<armnn::ITensorHandle> inputHandle =
52 std::unique_ptr<armnn::ITensorHandle> outputHandle =
56 AddInputToWorkload(descriptor, info, inputTensorInfo, inputHandle.get());
57 AddOutputToWorkload(descriptor, info, outputTensorInfo, outputHandle.get());
59 std::unique_ptr<armnn::IWorkload> workload = workloadFactory.
CreateStridedSlice(descriptor, info);
61 inputHandle->Allocate();
62 outputHandle->Allocate();
66 ExecuteWorkload(*workload, memoryManager);
73 template<armnn::DataType ArmnnType,
typename T = armnn::ResolveType<ArmnnType>>
81 unsigned int inputShape[] = {3, 2, 3, 1};
82 unsigned int outputShape[] = {1, 2, 3, 1};
92 std::vector<float> input = std::vector<float>(
94 1.0f, 1.0f, 1.0f, 2.0f, 2.0f, 2.0f,
96 3.0f, 3.0f, 3.0f, 4.0f, 4.0f, 4.0f,
98 5.0f, 5.0f, 5.0f, 6.0f, 6.0f, 6.0f
101 std::vector<float> outputExpected = std::vector<float>(
103 3.0f, 3.0f, 3.0f, 4.0f, 4.0f, 4.0f
106 return StridedSliceTestImpl<T, 4, 4>(
107 workloadFactory, memoryManager, inputTensorInfo, outputTensorInfo, input, outputExpected, desc);
110 template<armnn::DataType ArmnnType,
typename T = armnn::ResolveType<ArmnnType>>
118 unsigned int inputShape[] = {3, 2, 3, 1};
119 unsigned int outputShape[] = {1, 2, 3, 1};
129 std::vector<float> input = std::vector<float>(
131 1.0f, 1.0f, 1.0f, 2.0f, 2.0f, 2.0f,
133 3.0f, 3.0f, 3.0f, 4.0f, 4.0f, 4.0f,
135 5.0f, 5.0f, 5.0f, 6.0f, 6.0f, 6.0f
138 std::vector<float> outputExpected = std::vector<float>(
140 4.0f, 4.0f, 4.0f, 3.0f, 3.0f, 3.0f
143 return StridedSliceTestImpl<T, 4, 4>(
144 workloadFactory, memoryManager, inputTensorInfo, outputTensorInfo, input, outputExpected, desc);
147 template<armnn::DataType ArmnnType,
typename T = armnn::ResolveType<ArmnnType>>
155 unsigned int inputShape[] = {3, 2, 3, 1};
156 unsigned int outputShape[] = {2, 1, 2, 1};
166 std::vector<float> input = std::vector<float>(
168 1.0f, 1.0f, 1.0f, 2.0f, 2.0f, 2.0f,
170 3.0f, 3.0f, 3.0f, 4.0f, 4.0f, 4.0f,
172 5.0f, 5.0f, 5.0f, 6.0f, 6.0f, 6.0f
175 std::vector<float> outputExpected = std::vector<float>(
182 return StridedSliceTestImpl<T, 4, 4>(
183 workloadFactory, memoryManager, inputTensorInfo, outputTensorInfo, input, outputExpected, desc);
186 template<armnn::DataType ArmnnType,
typename T = armnn::ResolveType<ArmnnType>>
194 unsigned int inputShape[] = {3, 2, 3, 1};
195 unsigned int outputShape[] = {3, 2, 3, 1};
207 std::vector<float> input = std::vector<float>(
209 1.0f, 1.0f, 1.0f, 2.0f, 2.0f, 2.0f,
211 3.0f, 3.0f, 3.0f, 4.0f, 4.0f, 4.0f,
213 5.0f, 5.0f, 5.0f, 6.0f, 6.0f, 6.0f
216 std::vector<float> outputExpected = std::vector<float>(
218 1.0f, 1.0f, 1.0f, 2.0f, 2.0f, 2.0f,
220 3.0f, 3.0f, 3.0f, 4.0f, 4.0f, 4.0f,
222 5.0f, 5.0f, 5.0f, 6.0f, 6.0f, 6.0f
225 return StridedSliceTestImpl<T, 4, 4>(
226 workloadFactory, memoryManager, inputTensorInfo, outputTensorInfo, input, outputExpected, desc);
229 template<armnn::DataType ArmnnType,
typename T = armnn::ResolveType<ArmnnType>>
237 unsigned int inputShape[] = {3, 2, 3, 1};
238 unsigned int outputShape[] = {3, 1};
250 std::vector<float> input = std::vector<float>(
252 1.0f, 2.0f, 3.0f, 4.0f, 5.0f, 6.0f,
254 7.0f, 8.0f, 9.0f, 10.0f, 11.0f, 12.0f,
256 13.0f, 14.0f, 15.0f, 16.0f, 17.0f, 18.0f
259 std::vector<float> outputExpected = std::vector<float>(
264 return StridedSliceTestImpl<T, 4, 2>(
265 workloadFactory, memoryManager, inputTensorInfo, outputTensorInfo, input, outputExpected, desc);
268 template<armnn::DataType ArmnnType,
typename T = armnn::ResolveType<ArmnnType>>
276 unsigned int inputShape[] = {3, 2, 3, 1};
277 unsigned int outputShape[] = {2, 3, 1};
289 std::vector<float> input = std::vector<float>(
291 1.0f, 2.0f, 3.0f, 4.0f, 5.0f, 6.0f,
293 7.0f, 8.0f, 9.0f, 10.0f, 11.0f, 12.0f,
295 13.0f, 14.0f, 15.0f, 16.0f, 17.0f, 18.0f
298 std::vector<float> outputExpected = std::vector<float>(
300 1.0f, 2.0f, 3.0f, 4.0f, 5.0f, 6.0f
303 return StridedSliceTestImpl<T, 4, 3>(
304 workloadFactory, memoryManager, inputTensorInfo, outputTensorInfo, input, outputExpected, desc);
307 template<armnn::DataType ArmnnType,
typename T = armnn::ResolveType<ArmnnType>>
315 unsigned int inputShape[] = {3, 2, 3, 1};
316 unsigned int outputShape[] = {3, 3, 1};
328 std::vector<float> input = std::vector<float>(
330 1.0f, 2.0f, 3.0f, 4.0f, 5.0f, 6.0f,
332 7.0f, 8.0f, 9.0f, 10.0f, 11.0f, 12.0f,
334 13.0f, 14.0f, 15.0f, 16.0f, 17.0f, 18.0f
337 std::vector<float> outputExpected = std::vector<float>(
339 1.0f, 2.0f, 3.0f, 7.0f, 8.0f, 9.0f, 13.0f, 14.0f, 15.0f
342 return StridedSliceTestImpl<T, 4, 3>(
343 workloadFactory, memoryManager, inputTensorInfo, outputTensorInfo, input, outputExpected, desc);
346 template<armnn::DataType ArmnnType,
typename T = armnn::ResolveType<ArmnnType>>
354 unsigned int inputShape[] = {3, 2, 3, 1};
355 unsigned int outputShape[] = {3, 2, 1};
367 std::vector<float> input = std::vector<float>(
369 1.0f, 2.0f, 3.0f, 4.0f, 5.0f, 6.0f,
371 7.0f, 8.0f, 9.0f, 10.0f, 11.0f, 12.0f,
373 13.0f, 14.0f, 15.0f, 16.0f, 17.0f, 18.0f
376 std::vector<float> outputExpected = std::vector<float>(
378 1.0f, 4.0f, 7.0f, 10.0f, 13.0f, 16.0f
381 return StridedSliceTestImpl<T, 4, 3>(
382 workloadFactory, memoryManager, inputTensorInfo, outputTensorInfo, input, outputExpected, desc);
385 template<armnn::DataType ArmnnType,
typename T = armnn::ResolveType<ArmnnType>>
393 unsigned int inputShape[] = {3, 2, 3, 1};
394 unsigned int outputShape[] = {3, 2, 3};
406 std::vector<float> input = std::vector<float>(
408 1.0f, 2.0f, 3.0f, 4.0f, 5.0f, 6.0f,
410 7.0f, 8.0f, 9.0f, 10.0f, 11.0f, 12.0f,
412 13.0f, 14.0f, 15.0f, 16.0f, 17.0f, 18.0f
415 std::vector<float> outputExpected = std::vector<float>(
417 1.0f, 2.0f, 3.0f, 4.0f, 5.0f, 6.0f,
419 7.0f, 8.0f, 9.0f, 10.0f, 11.0f, 12.0f,
421 13.0f, 14.0f, 15.0f, 16.0f, 17.0f, 18.0f
424 return StridedSliceTestImpl<T, 4, 3>(
425 workloadFactory, memoryManager, inputTensorInfo, outputTensorInfo, input, outputExpected, desc);
428 template<armnn::DataType ArmnnType,
typename T = armnn::ResolveType<ArmnnType>>
436 unsigned int inputShape[] = {3, 2, 3, 1};
437 unsigned int outputShape[] = {3, 1};
449 std::vector<float> input = std::vector<float>(
451 1.0f, 2.0f, 3.0f, 4.0f, 5.0f, 6.0f,
453 7.0f, 8.0f, 9.0f, 10.0f, 11.0f, 12.0f,
455 13.0f, 14.0f, 15.0f, 16.0f, 17.0f, 18.0f
458 std::vector<float> outputExpected = std::vector<float>(
463 return StridedSliceTestImpl<T, 4, 2>(
464 workloadFactory, memoryManager, inputTensorInfo, outputTensorInfo, input, outputExpected, desc);
467 template<armnn::DataType ArmnnType,
typename T = armnn::ResolveType<ArmnnType>>
475 unsigned int inputShape[] = {2, 3, 1};
476 unsigned int outputShape[] = {3, 1};
488 std::vector<float> input = std::vector<float>(
490 1.0f, 2.0f, 3.0f, 4.0f, 5.0f, 6.0f
493 std::vector<float> outputExpected = std::vector<float>(
498 return StridedSliceTestImpl<T, 3, 2>(
499 workloadFactory, memoryManager, inputTensorInfo, outputTensorInfo, input, outputExpected, desc);
502 void FillVector(std::vector<float>& inputArray,
float start,
float step)
504 for (uint32_t i = 0; i < inputArray.size(); ++i)
506 inputArray[i] = start;
511 template<armnn::DataType ArmnnType,
typename T = armnn::ResolveType<ArmnnType>>
519 unsigned int inputShape[] = {1, 1, 8, 942};
520 unsigned int outputShape[] = {1, 1, 1, 279};
534 std::vector<float> input(7536);
535 FillVector(input, 1.0f, 1.0f);
538 std::vector<float> outputExpected(279);
539 FillVector(outputExpected, 1171.0, 2.0f);
541 return StridedSliceTestImpl<T, 4, 4>(
542 workloadFactory, memoryManager, inputTensorInfo, outputTensorInfo, input, outputExpected, desc);
545 template<armnn::DataType ArmnnType,
typename T = armnn::ResolveType<ArmnnType>>
553 unsigned int inputShape[] = {3, 2, 3, 1};
554 unsigned int outputShape[] = {2, 1};
566 std::vector<float> input = std::vector<float>(
568 1.0f, 2.0f, 3.0f, 4.0f, 5.0f, 6.0f,
570 7.0f, 8.0f, 9.0f, 10.0f, 11.0f, 12.0f,
572 13.0f, 14.0f, 15.0f, 16.0f, 17.0f, 18.0f
575 std::vector<float> outputExpected = std::vector<float>(
580 return StridedSliceTestImpl<T, 4, 2>(
581 workloadFactory, memoryManager, inputTensorInfo, outputTensorInfo, input, outputExpected, desc);
584 template<armnn::DataType ArmnnType,
typename T = armnn::ResolveType<ArmnnType>>
592 unsigned int inputShape[] = {3, 2, 3, 1};
593 unsigned int outputShape[] = {2, 3};
605 std::vector<float> input = std::vector<float>(
607 1.0f, 2.0f, 3.0f, 4.0f, 5.0f, 6.0f,
609 7.0f, 8.0f, 9.0f, 10.0f, 11.0f, 12.0f,
611 13.0f, 14.0f, 15.0f, 16.0f, 17.0f, 18.0f
614 std::vector<float> outputExpected = std::vector<float>(
616 1.0f, 2.0f, 3.0f, 4.0f, 5.0f, 6.0f
619 return StridedSliceTestImpl<T, 4, 2>(
620 workloadFactory, memoryManager, inputTensorInfo, outputTensorInfo, input, outputExpected, desc);
623 template<armnn::DataType ArmnnType,
typename T = armnn::ResolveType<ArmnnType>>
631 unsigned int inputShape[] = {3, 2, 3, 1};
632 unsigned int outputShape[] = {3};
644 std::vector<float> input = std::vector<float>(
646 1.0f, 2.0f, 3.0f, 4.0f, 5.0f, 6.0f,
648 7.0f, 8.0f, 9.0f, 10.0f, 11.0f, 12.0f,
650 13.0f, 14.0f, 15.0f, 16.0f, 17.0f, 18.0f
653 std::vector<float> outputExpected = std::vector<float>(
658 return StridedSliceTestImpl<T, 4, 1>(
659 workloadFactory, memoryManager, inputTensorInfo, outputTensorInfo, input, outputExpected, desc);
662 template<armnn::DataType ArmnnType,
typename T = armnn::ResolveType<ArmnnType>>
670 unsigned int inputShape[] = {3, 3, 3};
671 unsigned int outputShape[] = {2, 2, 2};
682 std::vector<float> input = std::vector<float>(
684 1.0f, 2.0f, 3.0f, 4.0f, 5.0f, 6.0f, 7.0f, 8.0f, 9.0f,
686 10.0f, 11.0f, 12.0f, 13.0f, 14.0f, 15.0f, 16.0f, 17.0f, 18.0f,
688 19.0f, 20.0f, 21.0f, 22.0f, 23.0f, 24.0f, 25.0f, 26.0f, 27.0f
691 std::vector<float> outputExpected = std::vector<float>(
693 1.0f, 3.0f, 7.0f, 9.0f,
695 19.0f, 21.0f, 25.0f, 27.0f
698 return StridedSliceTestImpl<T, 3, 3>(
699 workloadFactory, memoryManager, inputTensorInfo, outputTensorInfo, input, outputExpected, desc);
702 template<armnn::DataType ArmnnType,
typename T = armnn::ResolveType<ArmnnType>>
710 unsigned int inputShape[] = {3, 3, 3};
711 unsigned int outputShape[] = {2, 2, 2};
721 std::vector<float> input = std::vector<float>(
723 1.0f, 2.0f, 3.0f, 4.0f, 5.0f, 6.0f, 7.0f, 8.0f, 9.0f,
725 10.0f, 11.0f, 12.0f, 13.0f, 14.0f, 15.0f, 16.0f, 17.0f, 18.0f,
727 19.0f, 20.0f, 21.0f, 22.0f, 23.0f, 24.0f, 25.0f, 26.0f, 27.0f
730 std::vector<float> outputExpected = std::vector<float>(
732 27.0f, 25.0f, 21.0f, 19.0f,
734 9.0f, 7.0f, 3.0f, 1.0f
737 return StridedSliceTestImpl<T, 3, 3>(
738 workloadFactory, memoryManager, inputTensorInfo, outputTensorInfo, input, outputExpected, desc);
741 template<armnn::DataType ArmnnType,
typename T = armnn::ResolveType<ArmnnType>>
749 unsigned int inputShape[] = {3, 3};
750 unsigned int outputShape[] = {2, 2};
761 std::vector<float> input = std::vector<float>(
770 std::vector<float> outputExpected = std::vector<float>(
777 return StridedSliceTestImpl<T, 2, 2>(
778 workloadFactory, memoryManager, inputTensorInfo, outputTensorInfo, input, outputExpected, desc);
781 template<armnn::DataType ArmnnType,
typename T = armnn::ResolveType<ArmnnType>>
789 unsigned int inputShape[] = {3, 3};
790 unsigned int outputShape[] = {2, 2};
802 std::vector<float> input = std::vector<float>(
811 std::vector<float> outputExpected = std::vector<float>(
818 return StridedSliceTestImpl<T, 2, 2>(
819 workloadFactory, memoryManager, inputTensorInfo, outputTensorInfo, input, outputExpected, desc);
828 return StridedSlice4dTest<armnn::DataType::Float32>(workloadFactory, memoryManager);
835 return StridedSlice4dReverseTest<armnn::DataType::Float32>(workloadFactory, memoryManager);
842 return StridedSliceSimpleStrideTest<armnn::DataType::Float32>(workloadFactory, memoryManager);
849 return StridedSliceSimpleRangeMaskTest<armnn::DataType::Float32>(workloadFactory, memoryManager);
856 return StridedSliceShrinkAxisMaskTest<armnn::DataType::Float32>(workloadFactory, memoryManager);
863 return StridedSliceShrinkAxisMaskCTSTest<armnn::DataType::Float32>(workloadFactory, memoryManager);
870 return StridedSliceShrinkAxisMaskBitPosition0Dim3Test<armnn::DataType::Float32>(workloadFactory, memoryManager);
877 return StridedSliceShrinkAxisMaskBitPosition0Test<armnn::DataType::Float32>(workloadFactory, memoryManager);
884 return StridedSliceShrinkAxisMaskBitPosition1Test<armnn::DataType::Float32>(workloadFactory, memoryManager);
891 return StridedSliceShrinkAxisMaskBitPosition2Test<armnn::DataType::Float32>(workloadFactory, memoryManager);
898 return StridedSliceShrinkAxisMaskBitPosition3Test<armnn::DataType::Float32>(workloadFactory, memoryManager);
905 return StridedSliceShrinkAxisMaskBitPosition0And1Test<armnn::DataType::Float32>(workloadFactory, memoryManager);
912 return StridedSliceShrinkAxisMaskBitPosition0And2Test<armnn::DataType::Float32>(workloadFactory, memoryManager);
919 return StridedSliceShrinkAxisMaskBitPosition0And3Test<armnn::DataType::Float32>(workloadFactory, memoryManager);
926 return StridedSliceShrinkAxisMaskBitPosition0And1And3Test<armnn::DataType::Float32>(workloadFactory, memoryManager);
933 return StridedSlice3dTest<armnn::DataType::Float32>(workloadFactory, memoryManager);
940 return StridedSlice3dReverseTest<armnn::DataType::Float32>(workloadFactory, memoryManager);
947 return StridedSlice2dTest<armnn::DataType::Float32>(workloadFactory, memoryManager);
954 return StridedSlice2dReverseTest<armnn::DataType::Float32>(workloadFactory, memoryManager);
961 return StridedSlice4dTest<armnn::DataType::QAsymmU8>(workloadFactory, memoryManager);
968 return StridedSlice4dReverseTest<armnn::DataType::QAsymmU8>(workloadFactory, memoryManager);
975 return StridedSliceSimpleStrideTest<armnn::DataType::QAsymmU8>(workloadFactory, memoryManager);
982 return StridedSliceSimpleRangeMaskTest<armnn::DataType::QAsymmU8>(workloadFactory, memoryManager);
989 return StridedSliceShrinkAxisMaskTest<armnn::DataType::QAsymmU8>(workloadFactory, memoryManager);
996 return StridedSliceShrinkAxisMaskBitPosition0Dim3Test<armnn::DataType::QAsymmU8>(workloadFactory,
1004 return StridedSliceShrinkAxisMaskBitPosition0Test<armnn::DataType::QAsymmU8>(workloadFactory,
1012 return StridedSliceShrinkAxisMaskBitPosition1Test<armnn::DataType::QAsymmU8>(workloadFactory,
1020 return StridedSliceShrinkAxisMaskBitPosition2Test<armnn::DataType::QAsymmU8>(workloadFactory,
1028 return StridedSliceShrinkAxisMaskBitPosition3Test<armnn::DataType::QAsymmU8>(workloadFactory,
1036 return StridedSliceShrinkAxisMaskBitPosition0And1Test<armnn::DataType::QAsymmU8>(workloadFactory,
1044 return StridedSliceShrinkAxisMaskBitPosition0And2Test<armnn::DataType::QAsymmU8>(workloadFactory,
1052 return StridedSliceShrinkAxisMaskBitPosition0And3Test<armnn::DataType::QAsymmU8>(workloadFactory,
1060 return StridedSliceShrinkAxisMaskBitPosition0And1And3Test<armnn::DataType::QAsymmU8>(workloadFactory,
1068 return StridedSlice3dTest<armnn::DataType::QAsymmU8>(workloadFactory, memoryManager);
1075 return StridedSlice3dReverseTest<armnn::DataType::QAsymmU8>(workloadFactory, memoryManager);
1082 return StridedSlice2dTest<armnn::DataType::QAsymmU8>(workloadFactory, memoryManager);
1089 return StridedSlice2dReverseTest<armnn::DataType::QAsymmU8>(workloadFactory, memoryManager);
1096 return StridedSlice4dTest<armnn::DataType::QSymmS16>(workloadFactory, memoryManager);
1103 return StridedSlice4dReverseTest<armnn::DataType::QSymmS16>(workloadFactory, memoryManager);
1110 return StridedSliceSimpleStrideTest<armnn::DataType::QSymmS16>(workloadFactory, memoryManager);
1117 return StridedSliceSimpleRangeMaskTest<armnn::DataType::QSymmS16>(workloadFactory, memoryManager);
1124 return StridedSliceShrinkAxisMaskTest<armnn::DataType::QSymmS16>(workloadFactory, memoryManager);
1131 return StridedSlice3dTest<armnn::DataType::QSymmS16>(workloadFactory, memoryManager);
1138 return StridedSlice3dReverseTest<armnn::DataType::QSymmS16>(workloadFactory, memoryManager);
1145 return StridedSlice2dTest<armnn::DataType::QSymmS16>(workloadFactory, memoryManager);
1152 return StridedSlice2dReverseTest<armnn::DataType::QSymmS16>(workloadFactory, memoryManager);
LayerTestResult< float, 4 > StridedSliceSimpleStrideFloat32Test(armnn::IWorkloadFactory &workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr &memoryManager)
LayerTestResult< uint8_t, 3 > StridedSliceShrinkAxisMaskBitPosition2Uint8Test(armnn::IWorkloadFactory &workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr &memoryManager)
int32_t m_ShrinkAxisMask
Shrink axis mask value. If set, the nth specification shrinks the dimensionality by 1...
LayerTestResult< uint8_t, 2 > StridedSlice2dReverseUint8Test(armnn::IWorkloadFactory &workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr &memoryManager)
std::vector< int > m_Begin
Begin values for the input that will be sliced.
LayerTestResult< uint8_t, 3 > StridedSliceShrinkAxisMaskBitPosition0Uint8Test(armnn::IWorkloadFactory &workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr &memoryManager)
LayerTestResult< float, 4 > StridedSlice4dFloat32Test(armnn::IWorkloadFactory &workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr &memoryManager)
LayerTestResult< float, 2 > StridedSliceShrinkAxisMaskBitPosition0Dim3Float32Test(armnn::IWorkloadFactory &workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr &memoryManager)
LayerTestResult< int16_t, 4 > StridedSliceSimpleStrideInt16Test(armnn::IWorkloadFactory &workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr &memoryManager)
virtual std::unique_ptr< IWorkload > CreateStridedSlice(const StridedSliceQueueDescriptor &descriptor, const WorkloadInfo &Info) const
LayerTestResult< uint8_t, 4 > StridedSliceSimpleStrideUint8Test(armnn::IWorkloadFactory &workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr &memoryManager)
LayerTestResult< float, 1 > StridedSliceShrinkAxisMaskBitPosition0And1And3Float32Test(armnn::IWorkloadFactory &workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr &memoryManager)
LayerTestResult< uint8_t, 3 > StridedSlice3dReverseUint8Test(armnn::IWorkloadFactory &workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr &memoryManager)
LayerTestResult< uint8_t, 3 > StridedSlice3dUint8Test(armnn::IWorkloadFactory &workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr &memoryManager)
LayerTestResult< int16_t, 3 > StridedSlice3dInt16Test(armnn::IWorkloadFactory &workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr &memoryManager)
LayerTestResult< int16_t, 2 > StridedSlice2dInt16Test(armnn::IWorkloadFactory &workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr &memoryManager)
void IgnoreUnused(Ts &&...)
int32_t m_BeginMask
Begin mask value.
int32_t m_EndMask
End mask value.
LayerTestResult< float, 4 > StridedSlice4dReverseFloat32Test(armnn::IWorkloadFactory &workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr &memoryManager)
LayerDescriptor m_Parameters
LayerTestResult< uint8_t, 4 > StridedSlice4dReverseUint8Test(armnn::IWorkloadFactory &workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr &memoryManager)
LayerTestResult< int16_t, 2 > StridedSlice2dReverseInt16Test(armnn::IWorkloadFactory &workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr &memoryManager)
LayerTestResult< uint8_t, 2 > StridedSliceShrinkAxisMaskBitPosition0Dim3Uint8Test(armnn::IWorkloadFactory &workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr &memoryManager)
LayerTestResult< float, 3 > StridedSliceShrinkAxisMaskBitPosition0Float32Test(armnn::IWorkloadFactory &workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr &memoryManager)
LayerTestResult< float, 4 > StridedSliceShrinkAxisMaskCTSFloat32Test(armnn::IWorkloadFactory &workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr &memoryManager)
LayerTestResult< float, 2 > StridedSliceShrinkAxisMaskBitPosition0And2Float32Test(armnn::IWorkloadFactory &workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr &memoryManager)
LayerTestResult< float, 3 > StridedSlice3dReverseFloat32Test(armnn::IWorkloadFactory &workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr &memoryManager)
LayerTestResult< uint8_t, 3 > StridedSliceShrinkAxisMaskBitPosition1Uint8Test(armnn::IWorkloadFactory &workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr &memoryManager)
std::shared_ptr< IMemoryManager > IMemoryManagerSharedPtr
LayerTestResult< uint8_t, 2 > StridedSliceShrinkAxisMaskBitPosition0And3Uint8Test(armnn::IWorkloadFactory &workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr &memoryManager)
LayerTestResult< int16_t, 4 > StridedSlice4dReverseInt16Test(armnn::IWorkloadFactory &workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr &memoryManager)
LayerTestResult< float, 2 > StridedSlice2dFloat32Test(armnn::IWorkloadFactory &workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr &memoryManager)
LayerTestResult< uint8_t, 4 > StridedSliceSimpleRangeMaskUint8Test(armnn::IWorkloadFactory &workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr &memoryManager)
void SetQuantizationScale(float scale)
LayerTestResult< int16_t, 4 > StridedSlice4dInt16Test(armnn::IWorkloadFactory &workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr &memoryManager)
std::vector< int > m_Stride
Stride values for the input that will be sliced.
void CopyDataFromITensorHandle(void *memory, const armnn::ITensorHandle *tensorHandle)
LayerTestResult< float, 2 > StridedSliceShrinkAxisMaskBitPosition0And3Float32Test(armnn::IWorkloadFactory &workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr &memoryManager)
virtual std::unique_ptr< ITensorHandle > CreateTensorHandle(const TensorInfo &tensorInfo, const bool IsMemoryManaged=true) const =0
LayerTestResult< int16_t, 3 > StridedSlice3dReverseInt16Test(armnn::IWorkloadFactory &workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr &memoryManager)
LayerTestResult< int16_t, 4 > StridedSliceSimpleRangeMaskInt16Test(armnn::IWorkloadFactory &workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr &memoryManager)
LayerTestResult< float, 3 > StridedSliceShrinkAxisMaskBitPosition2Float32Test(armnn::IWorkloadFactory &workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr &memoryManager)
LayerTestResult< float, 2 > StridedSliceShrinkAxisMaskFloat32Test(armnn::IWorkloadFactory &workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr &memoryManager)
LayerTestResult< uint8_t, 2 > StridedSlice2dUint8Test(armnn::IWorkloadFactory &workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr &memoryManager)
std::vector< int > m_End
End values for the input that will be sliced.
LayerTestResult< uint8_t, 2 > StridedSliceShrinkAxisMaskUint8Test(armnn::IWorkloadFactory &workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr &memoryManager)
LayerTestResult< uint8_t, 4 > StridedSlice4dUint8Test(armnn::IWorkloadFactory &workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr &memoryManager)
LayerTestResult< float, 3 > StridedSlice3dFloat32Test(armnn::IWorkloadFactory &workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr &memoryManager)
LayerTestResult< float, 2 > StridedSliceShrinkAxisMaskBitPosition0And1Float32Test(armnn::IWorkloadFactory &workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr &memoryManager)
LayerTestResult< float, 3 > StridedSliceShrinkAxisMaskBitPosition1Float32Test(armnn::IWorkloadFactory &workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr &memoryManager)
LayerTestResult< uint8_t, 2 > StridedSliceShrinkAxisMaskBitPosition0And1Uint8Test(armnn::IWorkloadFactory &workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr &memoryManager)
Contains information about inputs and outputs to a layer.
void SetQuantizationOffset(int32_t offset)
LayerTestResult< float, 4 > StridedSliceSimpleRangeMaskFloat32Test(armnn::IWorkloadFactory &workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr &memoryManager)
LayerTestResult< int16_t, 2 > StridedSliceShrinkAxisMaskInt16Test(armnn::IWorkloadFactory &workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr &memoryManager)
LayerTestResult< uint8_t, 3 > StridedSliceShrinkAxisMaskBitPosition3Uint8Test(armnn::IWorkloadFactory &workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr &memoryManager)
LayerTestResult< uint8_t, 1 > StridedSliceShrinkAxisMaskBitPosition0And1And3Uint8Test(armnn::IWorkloadFactory &workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr &memoryManager)
LayerTestResult< uint8_t, 2 > StridedSliceShrinkAxisMaskBitPosition0And2Uint8Test(armnn::IWorkloadFactory &workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr &memoryManager)
void CopyDataToITensorHandle(armnn::ITensorHandle *tensorHandle, const void *memory)
LayerTestResult< float, 2 > StridedSlice2dReverseFloat32Test(armnn::IWorkloadFactory &workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr &memoryManager)
LayerTestResult< float, 3 > StridedSliceShrinkAxisMaskBitPosition3Float32Test(armnn::IWorkloadFactory &workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr &memoryManager)