xref: /aosp_15_r20/external/armnn/src/backends/backendsCommon/test/layerTests/SpaceToBatchNdTestImpl.hpp (revision 89c4ff92f2867872bb9e2354d150bf0c8c502810)
1 //
2 // Copyright © 2017 Arm Ltd. All rights reserved.
3 // SPDX-License-Identifier: MIT
4 //
5 #pragma once
6 
7 #include <armnnTestUtils/LayerTestResult.hpp>
8 
9 #include <Half.hpp>
10 
11 #include <armnn/backends/IBackendInternal.hpp>
12 #include <armnn/backends/WorkloadFactory.hpp>
13 
14 LayerTestResult<float, 4> SpaceToBatchNdSimpleFloat32Test(
15     armnn::IWorkloadFactory& workloadFactory,
16     const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
17     const armnn::ITensorHandleFactory& tensorHandleFactory);
18 
19 LayerTestResult<float, 4> SpaceToBatchNdMultiChannelsFloat32Test(
20     armnn::IWorkloadFactory& workloadFactory,
21     const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
22     const armnn::ITensorHandleFactory& tensorHandleFactory);
23 
24 LayerTestResult<float, 4> SpaceToBatchNdMultiBlockFloat32Test(
25     armnn::IWorkloadFactory& workloadFactory,
26     const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
27     const armnn::ITensorHandleFactory& tensorHandleFactory);
28 
29 LayerTestResult<float, 4> SpaceToBatchNdPaddingFloat32Test(
30     armnn::IWorkloadFactory& workloadFactory,
31     const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
32     const armnn::ITensorHandleFactory& tensorHandleFactory);
33 
34 LayerTestResult<armnn::Half, 4> SpaceToBatchNdSimpleFloat16Test(
35     armnn::IWorkloadFactory& workloadFactory,
36     const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
37     const armnn::ITensorHandleFactory& tensorHandleFactory);
38 
39 LayerTestResult<armnn::Half, 4> SpaceToBatchNdMultiChannelsFloat16Test(
40     armnn::IWorkloadFactory& workloadFactory,
41     const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
42     const armnn::ITensorHandleFactory& tensorHandleFactory);
43 
44 LayerTestResult<armnn::Half, 4> SpaceToBatchNdMultiBlockFloat16Test(
45     armnn::IWorkloadFactory& workloadFactory,
46     const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
47     const armnn::ITensorHandleFactory& tensorHandleFactory);
48 
49 LayerTestResult<armnn::Half, 4> SpaceToBatchNdPaddingFloat16Test(
50     armnn::IWorkloadFactory& workloadFactory,
51     const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
52     const armnn::ITensorHandleFactory& tensorHandleFactory);
53 
54 LayerTestResult<uint8_t, 4> SpaceToBatchNdSimpleUint8Test(
55     armnn::IWorkloadFactory& workloadFactory,
56     const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
57     const armnn::ITensorHandleFactory& tensorHandleFactory);
58 
59 LayerTestResult<uint8_t, 4> SpaceToBatchNdMultiChannelsUint8Test(
60     armnn::IWorkloadFactory& workloadFactory,
61     const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
62     const armnn::ITensorHandleFactory& tensorHandleFactory);
63 
64 LayerTestResult<uint8_t, 4> SpaceToBatchNdMultiBlockUint8Test(
65     armnn::IWorkloadFactory& workloadFactory,
66     const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
67     const armnn::ITensorHandleFactory& tensorHandleFactory);
68 
69 LayerTestResult<uint8_t, 4> SpaceToBatchNdPaddingUint8Test(
70     armnn::IWorkloadFactory& workloadFactory,
71     const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
72     const armnn::ITensorHandleFactory& tensorHandleFactory);
73 
74 LayerTestResult<float, 4> SpaceToBatchNdSimpleNhwcFloat32Test(
75     armnn::IWorkloadFactory& workloadFactory,
76     const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
77     const armnn::ITensorHandleFactory& tensorHandleFactory);
78 
79 LayerTestResult<float, 4> SpaceToBatchNdMultiChannelsNhwcFloat32Test(
80     armnn::IWorkloadFactory& workloadFactory,
81     const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
82     const armnn::ITensorHandleFactory& tensorHandleFactory);
83 
84 LayerTestResult<float, 4> SpaceToBatchNdMultiBlockNhwcFloat32Test(
85     armnn::IWorkloadFactory& workloadFactory,
86     const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
87     const armnn::ITensorHandleFactory& tensorHandleFactory);
88 
89 LayerTestResult<float, 4> SpaceToBatchNdPaddingNhwcFloat32Test(
90     armnn::IWorkloadFactory& workloadFactory,
91     const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
92     const armnn::ITensorHandleFactory& tensorHandleFactory);
93 
94 LayerTestResult<armnn::Half, 4> SpaceToBatchNdSimpleNhwcFloat16Test(
95     armnn::IWorkloadFactory& workloadFactory,
96     const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
97     const armnn::ITensorHandleFactory& tensorHandleFactory);
98 
99 LayerTestResult<armnn::Half, 4> SpaceToBatchNdMultiChannelsNhwcFloat16Test(
100     armnn::IWorkloadFactory& workloadFactory,
101     const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
102     const armnn::ITensorHandleFactory& tensorHandleFactory);
103 
104 LayerTestResult<armnn::Half, 4> SpaceToBatchNdMultiBlockNhwcFloat16Test(
105     armnn::IWorkloadFactory& workloadFactory,
106     const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
107     const armnn::ITensorHandleFactory& tensorHandleFactory);
108 
109 LayerTestResult<armnn::Half, 4> SpaceToBatchNdPaddingNhwcFloat16Test(
110     armnn::IWorkloadFactory& workloadFactory,
111     const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
112     const armnn::ITensorHandleFactory& tensorHandleFactory);
113 
114 LayerTestResult<uint8_t, 4> SpaceToBatchNdSimpleNhwcUint8Test(
115     armnn::IWorkloadFactory& workloadFactory,
116     const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
117     const armnn::ITensorHandleFactory& tensorHandleFactory);
118 
119 LayerTestResult<uint8_t, 4> SpaceToBatchNdMultiChannelsNhwcUint8Test(
120     armnn::IWorkloadFactory& workloadFactory,
121     const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
122     const armnn::ITensorHandleFactory& tensorHandleFactory);
123 
124 LayerTestResult<uint8_t, 4> SpaceToBatchNdMultiBlockNhwcUint8Test(
125     armnn::IWorkloadFactory& workloadFactory,
126     const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
127     const armnn::ITensorHandleFactory& tensorHandleFactory);
128 
129 LayerTestResult<uint8_t, 4> SpaceToBatchNdPaddingNhwcUint8Test(
130     armnn::IWorkloadFactory& workloadFactory,
131     const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
132     const armnn::ITensorHandleFactory& tensorHandleFactory);
133 
134 LayerTestResult<int16_t, 4> SpaceToBatchNdSimpleUint16Test(
135         armnn::IWorkloadFactory& workloadFactory,
136         const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
137         const armnn::ITensorHandleFactory& tensorHandleFactory);
138 
139 LayerTestResult<int16_t, 4> SpaceToBatchNdMultiChannelsUint16Test(
140         armnn::IWorkloadFactory& workloadFactory,
141         const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
142         const armnn::ITensorHandleFactory& tensorHandleFactory);
143 
144 LayerTestResult<int16_t, 4> SpaceToBatchNdMultiBlockUint16Test(
145         armnn::IWorkloadFactory& workloadFactory,
146         const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
147         const armnn::ITensorHandleFactory& tensorHandleFactory);
148 
149 LayerTestResult<int16_t, 4> SpaceToBatchNdPaddingUint16Test(
150         armnn::IWorkloadFactory& workloadFactory,
151         const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
152         const armnn::ITensorHandleFactory& tensorHandleFactory);
153 
154 LayerTestResult<int16_t, 4> SpaceToBatchNdSimpleNhwcUint16Test(
155         armnn::IWorkloadFactory& workloadFactory,
156         const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
157         const armnn::ITensorHandleFactory& tensorHandleFactory);
158 
159 LayerTestResult<int16_t, 4> SpaceToBatchNdMultiChannelsNhwcUint16Test(
160         armnn::IWorkloadFactory& workloadFactory,
161         const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
162         const armnn::ITensorHandleFactory& tensorHandleFactory);
163 
164 LayerTestResult<int16_t, 4> SpaceToBatchNdMultiBlockNhwcUint16Test(
165         armnn::IWorkloadFactory& workloadFactory,
166         const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
167         const armnn::ITensorHandleFactory& tensorHandleFactory);
168 
169 LayerTestResult<int16_t, 4> SpaceToBatchNdPaddingNhwcUint16Test(
170         armnn::IWorkloadFactory& workloadFactory,
171         const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
172         const armnn::ITensorHandleFactory& tensorHandleFactory);
173