blob: 41801875ecd9a63fd79f613cb64b7e14a53a9c19 [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#pragma once
6
7#include "LayerTestResult.hpp"
8
Matthew Jackson9bff1442019-09-12 09:08:23 +01009#include <Half.hpp>
10
Matteo Martincighe5b8eb92019-11-28 15:45:42 +000011#include <armnn/backends/IBackendInternal.hpp>
Aron Virginas-Tar00d306e2019-08-28 18:08:46 +010012#include <backendsCommon/WorkloadFactory.hpp>
13
14LayerTestResult<float, 4> SpaceToBatchNdSimpleFloat32Test(
15 armnn::IWorkloadFactory& workloadFactory,
Sadik Armagan714fe5b2020-08-27 12:46:36 +010016 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
17 armnn::ITensorHandleFactory* tensorHandleFactory);
Aron Virginas-Tar00d306e2019-08-28 18:08:46 +010018
19LayerTestResult<float, 4> SpaceToBatchNdMultiChannelsFloat32Test(
20 armnn::IWorkloadFactory& workloadFactory,
Sadik Armagan714fe5b2020-08-27 12:46:36 +010021 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
22 armnn::ITensorHandleFactory* tensorHandleFactory);
Aron Virginas-Tar00d306e2019-08-28 18:08:46 +010023
24LayerTestResult<float, 4> SpaceToBatchNdMultiBlockFloat32Test(
25 armnn::IWorkloadFactory& workloadFactory,
Sadik Armagan714fe5b2020-08-27 12:46:36 +010026 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
27 armnn::ITensorHandleFactory* tensorHandleFactory);
Aron Virginas-Tar00d306e2019-08-28 18:08:46 +010028
29LayerTestResult<float, 4> SpaceToBatchNdPaddingFloat32Test(
30 armnn::IWorkloadFactory& workloadFactory,
Sadik Armagan714fe5b2020-08-27 12:46:36 +010031 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
32 armnn::ITensorHandleFactory* tensorHandleFactory);
Aron Virginas-Tar00d306e2019-08-28 18:08:46 +010033
Matthew Jackson9bff1442019-09-12 09:08:23 +010034LayerTestResult<armnn::Half, 4> SpaceToBatchNdSimpleFloat16Test(
35 armnn::IWorkloadFactory& workloadFactory,
Sadik Armagan714fe5b2020-08-27 12:46:36 +010036 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
37 armnn::ITensorHandleFactory* tensorHandleFactory);
Matthew Jackson9bff1442019-09-12 09:08:23 +010038
39LayerTestResult<armnn::Half, 4> SpaceToBatchNdMultiChannelsFloat16Test(
40 armnn::IWorkloadFactory& workloadFactory,
Sadik Armagan714fe5b2020-08-27 12:46:36 +010041 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
42 armnn::ITensorHandleFactory* tensorHandleFactory);
Matthew Jackson9bff1442019-09-12 09:08:23 +010043
44LayerTestResult<armnn::Half, 4> SpaceToBatchNdMultiBlockFloat16Test(
45 armnn::IWorkloadFactory& workloadFactory,
Sadik Armagan714fe5b2020-08-27 12:46:36 +010046 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
47 armnn::ITensorHandleFactory* tensorHandleFactory);
Matthew Jackson9bff1442019-09-12 09:08:23 +010048
49LayerTestResult<armnn::Half, 4> SpaceToBatchNdPaddingFloat16Test(
50 armnn::IWorkloadFactory& workloadFactory,
Sadik Armagan714fe5b2020-08-27 12:46:36 +010051 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
52 armnn::ITensorHandleFactory* tensorHandleFactory);
Matthew Jackson9bff1442019-09-12 09:08:23 +010053
Aron Virginas-Tar00d306e2019-08-28 18:08:46 +010054LayerTestResult<uint8_t, 4> SpaceToBatchNdSimpleUint8Test(
55 armnn::IWorkloadFactory& workloadFactory,
Sadik Armagan714fe5b2020-08-27 12:46:36 +010056 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
57 armnn::ITensorHandleFactory* tensorHandleFactory);
Aron Virginas-Tar00d306e2019-08-28 18:08:46 +010058
59LayerTestResult<uint8_t, 4> SpaceToBatchNdMultiChannelsUint8Test(
60 armnn::IWorkloadFactory& workloadFactory,
Sadik Armagan714fe5b2020-08-27 12:46:36 +010061 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
62 armnn::ITensorHandleFactory* tensorHandleFactory);
Aron Virginas-Tar00d306e2019-08-28 18:08:46 +010063
64LayerTestResult<uint8_t, 4> SpaceToBatchNdMultiBlockUint8Test(
65 armnn::IWorkloadFactory& workloadFactory,
Sadik Armagan714fe5b2020-08-27 12:46:36 +010066 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
67 armnn::ITensorHandleFactory* tensorHandleFactory);
Aron Virginas-Tar00d306e2019-08-28 18:08:46 +010068
69LayerTestResult<uint8_t, 4> SpaceToBatchNdPaddingUint8Test(
70 armnn::IWorkloadFactory& workloadFactory,
Sadik Armagan714fe5b2020-08-27 12:46:36 +010071 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
72 armnn::ITensorHandleFactory* tensorHandleFactory);
Aron Virginas-Tar00d306e2019-08-28 18:08:46 +010073
74LayerTestResult<float, 4> SpaceToBatchNdSimpleNhwcFloat32Test(
75 armnn::IWorkloadFactory& workloadFactory,
Sadik Armagan714fe5b2020-08-27 12:46:36 +010076 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
77 armnn::ITensorHandleFactory* tensorHandleFactory);
Aron Virginas-Tar00d306e2019-08-28 18:08:46 +010078
79LayerTestResult<float, 4> SpaceToBatchNdMultiChannelsNhwcFloat32Test(
80 armnn::IWorkloadFactory& workloadFactory,
Sadik Armagan714fe5b2020-08-27 12:46:36 +010081 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
82 armnn::ITensorHandleFactory* tensorHandleFactory);
Aron Virginas-Tar00d306e2019-08-28 18:08:46 +010083
84LayerTestResult<float, 4> SpaceToBatchNdMultiBlockNhwcFloat32Test(
85 armnn::IWorkloadFactory& workloadFactory,
Sadik Armagan714fe5b2020-08-27 12:46:36 +010086 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
87 armnn::ITensorHandleFactory* tensorHandleFactory);
Aron Virginas-Tar00d306e2019-08-28 18:08:46 +010088
89LayerTestResult<float, 4> SpaceToBatchNdPaddingNhwcFloat32Test(
90 armnn::IWorkloadFactory& workloadFactory,
Sadik Armagan714fe5b2020-08-27 12:46:36 +010091 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
92 armnn::ITensorHandleFactory* tensorHandleFactory);
Aron Virginas-Tar00d306e2019-08-28 18:08:46 +010093
Matthew Jackson9bff1442019-09-12 09:08:23 +010094LayerTestResult<armnn::Half, 4> SpaceToBatchNdSimpleNhwcFloat16Test(
95 armnn::IWorkloadFactory& workloadFactory,
Sadik Armagan714fe5b2020-08-27 12:46:36 +010096 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
97 armnn::ITensorHandleFactory* tensorHandleFactory);
Matthew Jackson9bff1442019-09-12 09:08:23 +010098
99LayerTestResult<armnn::Half, 4> SpaceToBatchNdMultiChannelsNhwcFloat16Test(
100 armnn::IWorkloadFactory& workloadFactory,
Sadik Armagan714fe5b2020-08-27 12:46:36 +0100101 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
102 armnn::ITensorHandleFactory* tensorHandleFactory);
Matthew Jackson9bff1442019-09-12 09:08:23 +0100103
104LayerTestResult<armnn::Half, 4> SpaceToBatchNdMultiBlockNhwcFloat16Test(
105 armnn::IWorkloadFactory& workloadFactory,
Sadik Armagan714fe5b2020-08-27 12:46:36 +0100106 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
107 armnn::ITensorHandleFactory* tensorHandleFactory);
Matthew Jackson9bff1442019-09-12 09:08:23 +0100108
109LayerTestResult<armnn::Half, 4> SpaceToBatchNdPaddingNhwcFloat16Test(
110 armnn::IWorkloadFactory& workloadFactory,
Sadik Armagan714fe5b2020-08-27 12:46:36 +0100111 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
112 armnn::ITensorHandleFactory* tensorHandleFactory);
Matthew Jackson9bff1442019-09-12 09:08:23 +0100113
Aron Virginas-Tar00d306e2019-08-28 18:08:46 +0100114LayerTestResult<uint8_t, 4> SpaceToBatchNdSimpleNhwcUint8Test(
115 armnn::IWorkloadFactory& workloadFactory,
Sadik Armagan714fe5b2020-08-27 12:46:36 +0100116 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
117 armnn::ITensorHandleFactory* tensorHandleFactory);
Aron Virginas-Tar00d306e2019-08-28 18:08:46 +0100118
119LayerTestResult<uint8_t, 4> SpaceToBatchNdMultiChannelsNhwcUint8Test(
120 armnn::IWorkloadFactory& workloadFactory,
Sadik Armagan714fe5b2020-08-27 12:46:36 +0100121 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
122 armnn::ITensorHandleFactory* tensorHandleFactory);
Aron Virginas-Tar00d306e2019-08-28 18:08:46 +0100123
124LayerTestResult<uint8_t, 4> SpaceToBatchNdMultiBlockNhwcUint8Test(
125 armnn::IWorkloadFactory& workloadFactory,
Sadik Armagan714fe5b2020-08-27 12:46:36 +0100126 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
127 armnn::ITensorHandleFactory* tensorHandleFactory);
Aron Virginas-Tar00d306e2019-08-28 18:08:46 +0100128
129LayerTestResult<uint8_t, 4> SpaceToBatchNdPaddingNhwcUint8Test(
130 armnn::IWorkloadFactory& workloadFactory,
Sadik Armagan714fe5b2020-08-27 12:46:36 +0100131 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
132 armnn::ITensorHandleFactory* tensorHandleFactory);
Aron Virginas-Tar00d306e2019-08-28 18:08:46 +0100133
134LayerTestResult<int16_t, 4> SpaceToBatchNdSimpleUint16Test(
135 armnn::IWorkloadFactory& workloadFactory,
Sadik Armagan714fe5b2020-08-27 12:46:36 +0100136 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
137 armnn::ITensorHandleFactory* tensorHandleFactory);
Aron Virginas-Tar00d306e2019-08-28 18:08:46 +0100138
139LayerTestResult<int16_t, 4> SpaceToBatchNdMultiChannelsUint16Test(
140 armnn::IWorkloadFactory& workloadFactory,
Sadik Armagan714fe5b2020-08-27 12:46:36 +0100141 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
142 armnn::ITensorHandleFactory* tensorHandleFactory);
Aron Virginas-Tar00d306e2019-08-28 18:08:46 +0100143
144LayerTestResult<int16_t, 4> SpaceToBatchNdMultiBlockUint16Test(
145 armnn::IWorkloadFactory& workloadFactory,
Sadik Armagan714fe5b2020-08-27 12:46:36 +0100146 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
147 armnn::ITensorHandleFactory* tensorHandleFactory);
Aron Virginas-Tar00d306e2019-08-28 18:08:46 +0100148
149LayerTestResult<int16_t, 4> SpaceToBatchNdPaddingUint16Test(
150 armnn::IWorkloadFactory& workloadFactory,
Sadik Armagan714fe5b2020-08-27 12:46:36 +0100151 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
152 armnn::ITensorHandleFactory* tensorHandleFactory);
Aron Virginas-Tar00d306e2019-08-28 18:08:46 +0100153
154LayerTestResult<int16_t, 4> SpaceToBatchNdSimpleNhwcUint16Test(
155 armnn::IWorkloadFactory& workloadFactory,
Sadik Armagan714fe5b2020-08-27 12:46:36 +0100156 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
157 armnn::ITensorHandleFactory* tensorHandleFactory);
Aron Virginas-Tar00d306e2019-08-28 18:08:46 +0100158
159LayerTestResult<int16_t, 4> SpaceToBatchNdMultiChannelsNhwcUint16Test(
160 armnn::IWorkloadFactory& workloadFactory,
Sadik Armagan714fe5b2020-08-27 12:46:36 +0100161 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
162 armnn::ITensorHandleFactory* tensorHandleFactory);
Aron Virginas-Tar00d306e2019-08-28 18:08:46 +0100163
164LayerTestResult<int16_t, 4> SpaceToBatchNdMultiBlockNhwcUint16Test(
165 armnn::IWorkloadFactory& workloadFactory,
Sadik Armagan714fe5b2020-08-27 12:46:36 +0100166 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
167 armnn::ITensorHandleFactory* tensorHandleFactory);
Aron Virginas-Tar00d306e2019-08-28 18:08:46 +0100168
169LayerTestResult<int16_t, 4> SpaceToBatchNdPaddingNhwcUint16Test(
170 armnn::IWorkloadFactory& workloadFactory,
Sadik Armagan714fe5b2020-08-27 12:46:36 +0100171 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
172 armnn::ITensorHandleFactory* tensorHandleFactory);