blob: 421d03ad18ef82d551094c2b66a48f106af8c307 [file] [log] [blame]
Aron Virginas-Tar00d306e2019-08-28 18:08:46 +01001//
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 <backendsCommon/IBackendInternal.hpp>
13#include <backendsCommon/WorkloadFactory.hpp>
14
15template<armnn::DataType ArmnnType, typename T = armnn::ResolveType<ArmnnType>>
16LayerTestResult<T, 3> ConcatDifferentInputOutputQParamTest(
17 armnn::IWorkloadFactory& workloadFactory,
18 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
19 bool useSubtensor);
20
21LayerTestResult<float, 3> ConcatTest(
22 armnn::IWorkloadFactory& workloadFactory,
23 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
24
25LayerTestResult<uint8_t, 3> ConcatUint8Test(
26 armnn::IWorkloadFactory& workloadFactory,
27 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
28
29LayerTestResult<uint16_t, 3> ConcatUint16Test(
30 armnn::IWorkloadFactory& workloadFactory,
31 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
32
33LayerTestResult<uint8_t, 3> ConcatUint8DifferentQParamsTest(
34 armnn::IWorkloadFactory& workloadFactory,
35 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
36
37LayerTestResult<float, 1> Concat1dTest(
38 armnn::IWorkloadFactory& workloadFactory,
39 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
40
41LayerTestResult<float, 2> Concat2dDim0Test(
42 armnn::IWorkloadFactory& workloadFactory,
43 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
44
45LayerTestResult<float, 2> Concat2dDim1Test(
46 armnn::IWorkloadFactory& workloadFactory,
47 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
48
49LayerTestResult<float, 2> Concat2dDim0DiffInputDimsTest(
50 armnn::IWorkloadFactory& workloadFactory,
51 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
52
53LayerTestResult<float, 2> Concat2dDim1DiffInputDimsTest(
54 armnn::IWorkloadFactory& workloadFactory,
55 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
56
57LayerTestResult<float, 3> Concat3dDim0Test(
58 armnn::IWorkloadFactory& workloadFactory,
59 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
60
61LayerTestResult<float, 3> Concat3dDim1Test(
62 armnn::IWorkloadFactory& workloadFactory,
63 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
64
65LayerTestResult<float, 3> Concat3dDim2Test(
66 armnn::IWorkloadFactory& workloadFactory,
67 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
68 bool useSubtensor);
69
70LayerTestResult<float, 3> Concat3dDim0DiffInputDimsTest(
71 armnn::IWorkloadFactory& workloadFactory,
72 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
73
74LayerTestResult<float, 3> Concat3dDim1DiffInputDimsTest(
75 armnn::IWorkloadFactory& workloadFactory,
76 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
77
78LayerTestResult<float, 3> Concat3dDim2DiffInputDimsTest(
79 armnn::IWorkloadFactory& workloadFactory,
80 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
81 bool useSubtensor);
82
83LayerTestResult<float, 4> Concat4dDim0Test(
84 armnn::IWorkloadFactory& workloadFactory,
85 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
86
87LayerTestResult<float, 4> Concat4dDim1Test(
88 armnn::IWorkloadFactory& workloadFactory,
89 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
90
91LayerTestResult<float, 4> Concat4dDim2Test(
92 armnn::IWorkloadFactory& workloadFactory,
93 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
94
95LayerTestResult<float, 4> Concat4dDim3Test(
96 armnn::IWorkloadFactory& workloadFactory,
97 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
98 bool useSubtensor);
99
100LayerTestResult<float, 4> Concat4dDiffShapeDim0Test(
101 armnn::IWorkloadFactory& workloadFactory,
102 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
103
104LayerTestResult<float, 4> Concat4dDiffShapeDim1Test(
105 armnn::IWorkloadFactory& workloadFactory,
106 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
107
108LayerTestResult<float, 4> Concat4dDiffShapeDim2Test(
109 armnn::IWorkloadFactory& workloadFactory,
110 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
111
112LayerTestResult<float, 4> Concat4dDiffShapeDim3Test(
113 armnn::IWorkloadFactory& workloadFactory,
114 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
115 bool useSubtensor);
116
117LayerTestResult<uint8_t, 4> Concat4dDim0Uint8Test(
118 armnn::IWorkloadFactory& workloadFactory,
119 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
120
121LayerTestResult<uint8_t, 4> Concat4dDim1Uint8Test(
122 armnn::IWorkloadFactory& workloadFactory,
123 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
124
125LayerTestResult<uint8_t, 4> Concat4dDim2Uint8Test(
126 armnn::IWorkloadFactory& workloadFactory,
127 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
128
129LayerTestResult<uint8_t, 4> Concat4dDim3Uint8Test(
130 armnn::IWorkloadFactory& workloadFactory,
131 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
132 bool useSubtensor);
133
134LayerTestResult<uint8_t, 4> Concat4dDiffShapeDim0Uint8Test(
135 armnn::IWorkloadFactory& workloadFactory,
136 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
137
138LayerTestResult<uint8_t, 4> Concat4dDiffShapeDim1Uint8Test(
139 armnn::IWorkloadFactory& workloadFactory,
140 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
141
142LayerTestResult<uint8_t, 4> Concat4dDiffShapeDim2Uint8Test(
143 armnn::IWorkloadFactory& workloadFactory,
144 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
145
146LayerTestResult<uint8_t, 4> Concat4dDiffShapeDim3Uint8Test(
147 armnn::IWorkloadFactory& workloadFactory,
148 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
149 bool useSubtensor);
150
151LayerTestResult<uint8_t, 1> Concat1dUint8Test(
152 armnn::IWorkloadFactory& workloadFactory,
153 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
154
155LayerTestResult<uint8_t, 2> Concat2dDim0Uint8Test(
156 armnn::IWorkloadFactory& workloadFactory,
157 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
158
159LayerTestResult<uint8_t, 2> Concat2dDim1Uint8Test(
160 armnn::IWorkloadFactory& workloadFactory,
161 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
162
163LayerTestResult<uint8_t, 2> Concat2dDim0DiffInputDimsUint8Test(
164 armnn::IWorkloadFactory& workloadFactory,
165 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
166
167LayerTestResult<uint8_t, 2> Concat2dDim1DiffInputDimsUint8Test(
168 armnn::IWorkloadFactory& workloadFactory,
169 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
170
171LayerTestResult<uint8_t, 3> Concat3dDim0Uint8Test(
172 armnn::IWorkloadFactory& workloadFactory,
173 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
174
175LayerTestResult<uint8_t, 3> Concat3dDim1Uint8Test(
176 armnn::IWorkloadFactory& workloadFactory,
177 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
178
179LayerTestResult<uint8_t, 3> Concat3dDim2Uint8Test(
180 armnn::IWorkloadFactory& workloadFactory,
181 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
182 bool useSubtensor);
183
184LayerTestResult<uint8_t, 3> Concat3dDim0DiffInputDimsUint8Test(
185 armnn::IWorkloadFactory& workloadFactory,
186 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
187
188LayerTestResult<uint8_t, 3> Concat3dDim1DiffInputDimsUint8Test(
189 armnn::IWorkloadFactory& workloadFactory,
190 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager);
191
192LayerTestResult<uint8_t, 3> Concat3dDim2DiffInputDimsUint8Test(
193 armnn::IWorkloadFactory& workloadFactory,
194 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
195 bool useSubtensor);
196
197LayerTestResult<uint8_t, 3> ConcatDifferentInputOutputQParamUint8Test(
198 armnn::IWorkloadFactory& workloadFactory,
199 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
200 bool useSubtensor);
201
202LayerTestResult<int16_t, 3> ConcatDifferentInputOutputQParamInt16Test(
203 armnn::IWorkloadFactory& workloadFactory,
204 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
205 bool useSubtensor);