ArmNN
 20.05
Conv2dTestImpl.hpp
Go to the documentation of this file.
1 //
2 // Copyright © 2017 Arm Ltd. All rights reserved.
3 // SPDX-License-Identifier: MIT
4 //
5 
6 #pragma once
7 
8 #include "LayerTestResult.hpp"
9 
10 #include <ResolveType.hpp>
11 
12 #include <armnn/Types.hpp>
13 
16 
17 //
18 // Convolution2d
19 //
20 
21 template<armnn::DataType ArmnnType, armnn::DataType ArmnnBType, typename T = armnn::ResolveType<ArmnnType>>
23  armnn::IWorkloadFactory& workloadFactory,
25  bool biasEnabled,
26  const armnn::DataLayout layout);
27 
28 template<armnn::DataType ArmnnType, armnn::DataType ArmnnBType, typename T = armnn::ResolveType<ArmnnType>>
30  armnn::IWorkloadFactory& workloadFactory,
32  bool biasEnabled,
33  const armnn::DataLayout layout);
34 
35 template<armnn::DataType ArmnnType, armnn::DataType ArmnnBType, typename T = armnn::ResolveType<ArmnnType>>
37  armnn::IWorkloadFactory &workloadFactory,
39  bool biasEnabled,
40  const armnn::DataLayout layout);
41 
43  armnn::IWorkloadFactory& workloadFactory,
45  bool biasEnabled,
46  const armnn::DataLayout layout);
47 
49  armnn::IWorkloadFactory& workloadFactory,
51  bool biasEnabled,
52  const armnn::DataLayout layout);
53 
55  armnn::IWorkloadFactory& workloadFactory,
57  bool biasEnabled,
58  const armnn::DataLayout layout);
59 
61  armnn::IWorkloadFactory& workloadFactory,
63  bool biasEnabled);
64 
66  armnn::IWorkloadFactory& workloadFactory,
68  bool biasEnabled,
69  const armnn::DataLayout layout);
70 
72  armnn::IWorkloadFactory& workloadFactory,
74  bool biasEnabled,
75  const armnn::DataLayout layout);
76 
78  armnn::IWorkloadFactory& workloadFactory,
80  bool biasEnabled,
81  const armnn::DataLayout layout);
82 
84  armnn::IWorkloadFactory& workloadFactory,
86  bool biasEnabled,
87  const armnn::DataLayout layout);
88 
90  armnn::IWorkloadFactory& workloadFactory,
92  armnn::DataLayout layout);
93 
95  armnn::IWorkloadFactory& workloadFactory,
97  armnn::DataLayout layout);
98 
100  armnn::IWorkloadFactory& workloadFactory,
102  bool biasEnabled);
103 
105  armnn::IWorkloadFactory& workloadFactory,
107  bool biasEnabled);
108 
110  armnn::IWorkloadFactory& workloadFactory,
112  armnn::IWorkloadFactory& refWorkloadFactory);
113 
115  armnn::IWorkloadFactory& workloadFactory,
117  const armnn::DataLayout layout);
118 
120  armnn::IWorkloadFactory& workloadFactory,
122  bool biasEnabled,
123  const armnn::DataLayout& dataLayout);
124 
126  armnn::IWorkloadFactory& workloadFactory,
128  bool biasEnabled,
129  const armnn::DataLayout& dataLayout);
130 
131 //
132 // DepthwiseConvolution2d
133 //
134 
135 template<armnn::DataType ArmnnType, armnn::DataType ArmnnBType, typename T = armnn::ResolveType<ArmnnType>>
137  armnn::IWorkloadFactory& workloadFactory,
139  bool biasEnabled,
140  const armnn::DataLayout layout);
141 
142 template<armnn::DataType ArmnnType, armnn::DataType ArmnnBType, typename T = armnn::ResolveType<ArmnnType>>
144  armnn::IWorkloadFactory& workloadFactory,
146  bool biasEnabled,
147  const armnn::DataLayout layout);
148 
149 template<armnn::DataType ArmnnType, armnn::DataType ArmnnBType, typename T = armnn::ResolveType<ArmnnType>>
151  armnn::IWorkloadFactory& workloadFactory,
153  bool biasEnabled,
154  const armnn::DataLayout layout);
155 
156 template<armnn::DataType ArmnnType, armnn::DataType ArmnnBType, typename T = armnn::ResolveType<ArmnnType>>
158  armnn::IWorkloadFactory& workloadFactory,
160  bool biasEnabled,
161  const armnn::DataLayout layout);
162 
163 template<typename T>
165  armnn::IWorkloadFactory& workloadFactory,
167  armnn::IWorkloadFactory& refWorkloadFactory,
168  const armnn::DataLayout layout);
169 
171  armnn::IWorkloadFactory& workloadFactory,
173  bool biasEnabled,
174  const armnn::DataLayout layout);
175 
177  armnn::IWorkloadFactory& workloadFactory,
179  bool biasEnabled);
180 
182  armnn::IWorkloadFactory& workloadFactory,
184  bool biasEnabled,
185  const armnn::DataLayout layout);
186 
188  armnn::IWorkloadFactory& workloadFactory,
190 
192  armnn::IWorkloadFactory& workloadFactory,
194  bool biasEnabled,
195  const armnn::DataLayout layout);
196 
198  armnn::IWorkloadFactory& workloadFactory,
200 
202  armnn::IWorkloadFactory& workloadFactory,
204  bool biasEnabled,
205  const armnn::DataLayout layout);
206 
208  armnn::IWorkloadFactory& workloadFactory,
210  bool biasEnabled,
211  const armnn::DataLayout layout);
212 
214  armnn::IWorkloadFactory& workloadFactory,
216  bool biasEnabled,
217  const armnn::DataLayout layout);
218 
220  armnn::IWorkloadFactory& workloadFactory,
222  bool biasEnabled,
223  const armnn::DataLayout layout);
224 
226  armnn::IWorkloadFactory& workloadFactory,
228  const armnn::DataLayout layout);
229 
231  armnn::IWorkloadFactory& workloadFactory,
233  armnn::IWorkloadFactory& refWorkloadFactory,
234  const armnn::DataLayout layout);
235 
237  armnn::IWorkloadFactory& workloadFactory,
239  armnn::IWorkloadFactory& refWorkloadFactory,
240  const armnn::DataLayout layout);
LayerTestResult< float, 4 > DepthwiseConvolution2dTest(armnn::IWorkloadFactory &workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr &memoryManager, bool biasEnabled, const armnn::DataLayout layout)
DataLayout
Definition: Types.hpp:49
LayerTestResult< float, 4 > SimpleConvolution2d3x3NhwcTest(armnn::IWorkloadFactory &workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr &memoryManager, bool biasEnabled)
LayerTestResult< float, 4 > SimpleDepthwiseConvolution2d3x3Dilation3x3NhwcTest(armnn::IWorkloadFactory &workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr &memoryManager)
LayerTestResult< float, 4 > DepthwiseConvolution2dAsymmetricTest(armnn::IWorkloadFactory &workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr &memoryManager, bool biasEnabled, const armnn::DataLayout layout)
LayerTestResult< int16_t, 4 > SimpleConvolution2d3x5QSymm16Test(armnn::IWorkloadFactory &workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr &memoryManager, bool biasEnabled, const armnn::DataLayout layout)
LayerTestResult< T, 4 > Convolution2d2x3x3Dilation3x3Test(armnn::IWorkloadFactory &workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr &memoryManager, bool biasEnabled, const armnn::DataLayout layout)
LayerTestResult< T, 4 > Convolution2d2x2Dilation2x2Padding2x2Stride3x3Test(armnn::IWorkloadFactory &workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr &memoryManager, bool biasEnabled, const armnn::DataLayout layout)
LayerTestResult< float, 4 > DepthwiseConvolution2dDepthMul1Test(armnn::IWorkloadFactory &workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr &memoryManager, bool biasEnabled, const armnn::DataLayout layout)
LayerTestResult< T, 4 > DepthwiseConvolution2d3x3Dilation3x3Test(armnn::IWorkloadFactory &workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr &memoryManager, bool biasEnabled, const armnn::DataLayout layout)
LayerTestResult< float, 4 > Convolution2d3x3Stride2x2BFloat16SmallValueTest(armnn::IWorkloadFactory &workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr &memoryManager, bool biasEnabled, const armnn::DataLayout &dataLayout)
LayerTestResult< float, 4 > Convolution2dAsymmetricPaddingLargerThanHalfKernelSizeTest(armnn::IWorkloadFactory &workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr &memoryManager, armnn::DataLayout layout)
LayerTestResult< float, 4 > SimpleConvolution2d3x3Test(armnn::IWorkloadFactory &workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr &memoryManager, bool biasEnabled, const armnn::DataLayout layout)
LayerTestResult< T, 4 > CompareDepthwiseConvolution2dTest(armnn::IWorkloadFactory &workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr &memoryManager, armnn::IWorkloadFactory &refWorkloadFactory, const armnn::DataLayout layout)
LayerTestResult< float, 4 > Convolution1dTest(armnn::IWorkloadFactory &workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr &memoryManager, bool biasEnabled)
LayerTestResult< uint8_t, 4 > Convolution1dUint8Test(armnn::IWorkloadFactory &workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr &memoryManager, bool biasEnabled)
LayerTestResult< uint8_t, 4 > DepthwiseConvolution2dUint8Test(armnn::IWorkloadFactory &workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr &memoryManager, bool biasEnabled, const armnn::DataLayout layout)
LayerTestResult< float, 4 > SimpleConvolution2d3x5Test(armnn::IWorkloadFactory &workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr &memoryManager, bool biasEnabled, const armnn::DataLayout layout)
std::shared_ptr< IMemoryManager > IMemoryManagerSharedPtr
LayerTestResult< float, 4 > CompareConvolution2dTest(armnn::IWorkloadFactory &workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr &memoryManager, armnn::IWorkloadFactory &refWorkloadFactory)
LayerTestResult< float, 4 > SimpleConvolution2d3x3Stride2x2Test(armnn::IWorkloadFactory &workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr &memoryManager, bool biasEnabled, const armnn::DataLayout layout)
LayerTestResult< uint8_t, 4 > CompareDepthwiseConvolution2dUint8Test(armnn::IWorkloadFactory &workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr &memoryManager, armnn::IWorkloadFactory &refWorkloadFactory, const armnn::DataLayout layout)
LayerTestResult< int16_t, 4 > DepthwiseConvolution2dInt16Test(armnn::IWorkloadFactory &workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr &memoryManager, bool biasEnabled, const armnn::DataLayout layout)
LayerTestResult< float, 4 > Convolution2d3x3Stride2x2BFloat16Test(armnn::IWorkloadFactory &workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr &memoryManager, bool biasEnabled, const armnn::DataLayout &dataLayout)
LayerTestResult< float, 4 > Convolution2dAsymmetricPaddingTest(armnn::IWorkloadFactory &workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr &memoryManager, armnn::DataLayout layout)
LayerTestResult< uint8_t, 4 > SimpleConvolution2d3x5Uint8Test(armnn::IWorkloadFactory &workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr &memoryManager, bool biasEnabled, const armnn::DataLayout layout)
LayerTestResult< T, 4 > Convolution2d3x3Dilation3x3Test(armnn::IWorkloadFactory &workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr &memoryManager, bool biasEnabled, const armnn::DataLayout layout)
LayerTestResult< float, 4 > CompareDepthwiseConvolution2dFloatTest(armnn::IWorkloadFactory &workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr &memoryManager, armnn::IWorkloadFactory &refWorkloadFactory, const armnn::DataLayout layout)
LayerTestResult< uint8_t, 4 > Convolution2dPerAxisQuantTest(armnn::IWorkloadFactory &workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr &memoryManager, const armnn::DataLayout layout)
LayerTestResult< uint8_t, 4 > DepthwiseConvolution2dDepthMul1Uint8Test(armnn::IWorkloadFactory &workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr &memoryManager, bool biasEnabled, const armnn::DataLayout layout)
LayerTestResult< int16_t, 4 > DepthwiseConvolution2dDepthMul1Int16Test(armnn::IWorkloadFactory &workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr &memoryManager, bool biasEnabled, const armnn::DataLayout layout)
LayerTestResult< float, 4 > DepthwiseConvolution2dDepthMul64Test(armnn::IWorkloadFactory &workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr &memoryManager)
LayerTestResult< uint8_t, 4 > DepthwiseConvolution2dPerAxisQuantTest(armnn::IWorkloadFactory &workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr &memoryManager, const armnn::DataLayout layout)
LayerTestResult< T, 4 > DepthwiseConvolution2dMult4Test(armnn::IWorkloadFactory &workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr &memoryManager, bool biasEnabled, const armnn::DataLayout layout)
LayerTestResult< int16_t, 4 > SimpleConvolution2d3x3QSymm16Test(armnn::IWorkloadFactory &workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr &memoryManager, bool biasEnabled, const armnn::DataLayout layout)
LayerTestResult< float, 4 > DepthwiseConvolution2dDepthNhwcTest(armnn::IWorkloadFactory &workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr &memoryManager, bool biasEnabled)
LayerTestResult< uint8_t, 4 > SimpleConvolution2d3x3Uint8Test(armnn::IWorkloadFactory &workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr &memoryManager, bool biasEnabled, const armnn::DataLayout layout)
LayerTestResult< T, 4 > DepthwiseConvolution2d2x3x3Dilation3x3Test(armnn::IWorkloadFactory &workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr &memoryManager, bool biasEnabled, const armnn::DataLayout layout)
LayerTestResult< T, 4 > DepthwiseConvolution2dMult2Test(armnn::IWorkloadFactory &workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr &memoryManager, bool biasEnabled, const armnn::DataLayout layout)