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