blob: e17a9193d4e9bf9d2a5fd88799149efbfd447b5f [file] [log] [blame]
Matthew Sloyanb63a3112021-09-08 13:05:51 +01001//
2// Copyright © 2021 Arm Ltd and Contributors. All rights reserved.
3// SPDX-License-Identifier: MIT
4//
5
6#pragma once
7
Sadik Armagana097d2a2021-11-24 15:47:28 +00008#include <armnnTestUtils/LayerTestResult.hpp>
Matthew Sloyanb63a3112021-09-08 13:05:51 +01009
10#include <Half.hpp>
11
12#include <ResolveType.hpp>
13
14#include <armnn/Types.hpp>
15
16#include <armnn/backends/IBackendInternal.hpp>
Colm Donelan0c479742021-12-10 12:43:54 +000017#include <armnn/backends/WorkloadFactory.hpp>
Matthew Sloyanb63a3112021-09-08 13:05:51 +010018
19//
20// Convolution3d
21//
22
23LayerTestResult<float, 5> SimpleConvolution3d3x3x3Float32Test(
24 armnn::IWorkloadFactory& workloadFactory,
25 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
26 const armnn::ITensorHandleFactory& tensorHandleFactory,
Matthew Sloyan5d7b0a32021-10-18 13:07:49 +010027 bool biasEnabled,
28 armnn::DataLayout dataLayout);
Matthew Sloyanb63a3112021-09-08 13:05:51 +010029
30LayerTestResult<int8_t , 5> SimpleConvolution3d3x3x3Int8Test(
31 armnn::IWorkloadFactory& workloadFactory,
32 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
33 const armnn::ITensorHandleFactory& tensorHandleFactory,
Matthew Sloyan5d7b0a32021-10-18 13:07:49 +010034 bool biasEnabled,
35 armnn::DataLayout dataLayout);
Matthew Sloyanb63a3112021-09-08 13:05:51 +010036
Rob Hugheseb70c912021-10-07 08:53:58 +010037LayerTestResult<uint8_t, 5> SimpleConvolution3d3x3x3Uint8Test(
Matthew Sloyanb63a3112021-09-08 13:05:51 +010038 armnn::IWorkloadFactory& workloadFactory,
39 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
40 const armnn::ITensorHandleFactory& tensorHandleFactory,
Matthew Sloyan5d7b0a32021-10-18 13:07:49 +010041 bool biasEnabled,
42 armnn::DataLayout dataLayout);
Matthew Sloyanb63a3112021-09-08 13:05:51 +010043
44LayerTestResult<int16_t, 5> SimpleConvolution3d3x3x3Int16Test(
45 armnn::IWorkloadFactory& workloadFactory,
46 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
47 const armnn::ITensorHandleFactory& tensorHandleFactory,
Matthew Sloyan5d7b0a32021-10-18 13:07:49 +010048 bool biasEnabled,
49 armnn::DataLayout dataLayout);
Matthew Sloyanb63a3112021-09-08 13:05:51 +010050
51LayerTestResult<float, 5> Convolution3d2x2x2Strides3x5x5Float32Test(
52 armnn::IWorkloadFactory& workloadFactory,
53 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
54 const armnn::ITensorHandleFactory& tensorHandleFactory,
Matthew Sloyan5d7b0a32021-10-18 13:07:49 +010055 bool biasEnabled,
56 armnn::DataLayout dataLayout);
Matthew Sloyanb63a3112021-09-08 13:05:51 +010057
58LayerTestResult<int8_t , 5> Convolution3d2x2x2Strides3x5x5Int8Test(
59 armnn::IWorkloadFactory& workloadFactory,
60 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
61 const armnn::ITensorHandleFactory& tensorHandleFactory,
Matthew Sloyan5d7b0a32021-10-18 13:07:49 +010062 bool biasEnabled,
63 armnn::DataLayout dataLayout);
Matthew Sloyanb63a3112021-09-08 13:05:51 +010064
Rob Hugheseb70c912021-10-07 08:53:58 +010065LayerTestResult<uint8_t, 5> Convolution3d2x2x2Strides3x5x5Uint8Test(
Matthew Sloyanb63a3112021-09-08 13:05:51 +010066 armnn::IWorkloadFactory& workloadFactory,
67 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
68 const armnn::ITensorHandleFactory& tensorHandleFactory,
Matthew Sloyan5d7b0a32021-10-18 13:07:49 +010069 bool biasEnabled,
70 armnn::DataLayout dataLayout);
Matthew Sloyanb63a3112021-09-08 13:05:51 +010071
72LayerTestResult<int16_t, 5> Convolution3d2x2x2Strides3x5x5Int16Test(
73 armnn::IWorkloadFactory& workloadFactory,
74 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
75 const armnn::ITensorHandleFactory& tensorHandleFactory,
Matthew Sloyan5d7b0a32021-10-18 13:07:49 +010076 bool biasEnabled,
77 armnn::DataLayout dataLayout);
Matthew Sloyanb63a3112021-09-08 13:05:51 +010078
79LayerTestResult<float, 5> Convolution3d2x2x2Dilation2x2x2Float32Test(
80 armnn::IWorkloadFactory& workloadFactory,
81 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
82 const armnn::ITensorHandleFactory& tensorHandleFactory,
Matthew Sloyan5d7b0a32021-10-18 13:07:49 +010083 bool biasEnabled,
84 armnn::DataLayout dataLayout);
Matthew Sloyanb63a3112021-09-08 13:05:51 +010085
86LayerTestResult<int8_t , 5> Convolution3d2x2x2Dilation2x2x2Int8Test(
87 armnn::IWorkloadFactory& workloadFactory,
88 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
89 const armnn::ITensorHandleFactory& tensorHandleFactory,
Matthew Sloyan5d7b0a32021-10-18 13:07:49 +010090 bool biasEnabled,
91 armnn::DataLayout dataLayout);
Matthew Sloyanb63a3112021-09-08 13:05:51 +010092
Rob Hugheseb70c912021-10-07 08:53:58 +010093LayerTestResult<uint8_t, 5> Convolution3d2x2x2Dilation2x2x2Uint8Test(
Matthew Sloyanb63a3112021-09-08 13:05:51 +010094 armnn::IWorkloadFactory& workloadFactory,
95 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
96 const armnn::ITensorHandleFactory& tensorHandleFactory,
Matthew Sloyan5d7b0a32021-10-18 13:07:49 +010097 bool biasEnabled,
98 armnn::DataLayout dataLayout);
Matthew Sloyanb63a3112021-09-08 13:05:51 +010099
100LayerTestResult<int16_t, 5> Convolution3d2x2x2Dilation2x2x2Int16Test(
101 armnn::IWorkloadFactory& workloadFactory,
102 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
103 const armnn::ITensorHandleFactory& tensorHandleFactory,
Matthew Sloyan5d7b0a32021-10-18 13:07:49 +0100104 bool biasEnabled,
105 armnn::DataLayout dataLayout);
Matthew Sloyanb63a3112021-09-08 13:05:51 +0100106
107LayerTestResult<float, 5> Convolution3dPaddingSame3x3x3Float32Test(
108 armnn::IWorkloadFactory& workloadFactory,
109 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
110 const armnn::ITensorHandleFactory& tensorHandleFactory,
Matthew Sloyan5d7b0a32021-10-18 13:07:49 +0100111 bool biasEnabled,
112 armnn::DataLayout dataLayout);
Matthew Sloyanb63a3112021-09-08 13:05:51 +0100113
114LayerTestResult<int8_t , 5> Convolution3dPaddingSame3x3x3Int8Test(
115 armnn::IWorkloadFactory& workloadFactory,
116 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
117 const armnn::ITensorHandleFactory& tensorHandleFactory,
Matthew Sloyan5d7b0a32021-10-18 13:07:49 +0100118 bool biasEnabled,
119 armnn::DataLayout dataLayout);
Matthew Sloyanb63a3112021-09-08 13:05:51 +0100120
Rob Hugheseb70c912021-10-07 08:53:58 +0100121LayerTestResult<uint8_t, 5> Convolution3dPaddingSame3x3x3Uint8Test(
Matthew Sloyanb63a3112021-09-08 13:05:51 +0100122 armnn::IWorkloadFactory& workloadFactory,
123 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
124 const armnn::ITensorHandleFactory& tensorHandleFactory,
Matthew Sloyan5d7b0a32021-10-18 13:07:49 +0100125 bool biasEnabled,
126 armnn::DataLayout dataLayout);
Matthew Sloyanb63a3112021-09-08 13:05:51 +0100127
128LayerTestResult<int16_t, 5> Convolution3dPaddingSame3x3x3Int16Test(
129 armnn::IWorkloadFactory& workloadFactory,
130 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
131 const armnn::ITensorHandleFactory& tensorHandleFactory,
Matthew Sloyan5d7b0a32021-10-18 13:07:49 +0100132 bool biasEnabled,
133 armnn::DataLayout dataLayout);
Matthew Sloyanb63a3112021-09-08 13:05:51 +0100134
135LayerTestResult<float, 5> Convolution3dStrideDilationPadding3x3x3Float32Test(
136 armnn::IWorkloadFactory& workloadFactory,
137 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
138 const armnn::ITensorHandleFactory& tensorHandleFactory,
Matthew Sloyan5d7b0a32021-10-18 13:07:49 +0100139 bool biasEnabled,
140 armnn::DataLayout dataLayout);
Matthew Sloyanb63a3112021-09-08 13:05:51 +0100141
142LayerTestResult<float, 5> Convolution3d2x2x2Stride3x3x3SmallFloat32Test(
143 armnn::IWorkloadFactory& workloadFactory,
144 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
145 const armnn::ITensorHandleFactory& tensorHandleFactory,
Matthew Sloyan5d7b0a32021-10-18 13:07:49 +0100146 bool biasEnabled,
147 armnn::DataLayout dataLayout);
Matthew Sloyanb63a3112021-09-08 13:05:51 +0100148
149LayerTestResult<armnn::Half, 5> Convolution3d2x3x3Float16Test(
150 armnn::IWorkloadFactory& workloadFactory,
151 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
152 const armnn::ITensorHandleFactory& tensorHandleFactory,
Matthew Sloyan5d7b0a32021-10-18 13:07:49 +0100153 bool biasEnabled,
154 armnn::DataLayout dataLayout);
Matthew Sloyanb63a3112021-09-08 13:05:51 +0100155
156LayerTestResult<armnn::Half, 5> Convolution3d2x2x2SmallFloat16Test(
157 armnn::IWorkloadFactory& workloadFactory,
158 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
159 const armnn::ITensorHandleFactory& tensorHandleFactory,
Matthew Sloyan5d7b0a32021-10-18 13:07:49 +0100160 bool biasEnabled,
161 armnn::DataLayout dataLayout);