blob: f01f4b3548e3b01a46c12f73d81c749773d04b57 [file] [log] [blame]
Marat Dukhan69722492019-11-11 19:55:50 -08001// Copyright 2019 Google LLC
2//
3// This source code is licensed under the BSD-style license found in the
4// LICENSE file in the root directory of this source tree.
5
6#include <gtest/gtest.h>
7
8#include "resize-bilinear-operator-tester.h"
9
10
Marat Dukhanefc47b82019-11-18 09:25:38 -080011TEST(RESIZE_BILINEAR_NHWC_F32, aligned_centers_upscale_y) {
Marat Dukhan69722492019-11-11 19:55:50 -080012 for (size_t input_height = 1; input_height <= 3; input_height++) {
13 for (size_t output_height = input_height + 1; output_height < 15; output_height *= 3) {
14 ResizeBilinearOperatorTester()
15 .input_size(input_height, 1)
16 .output_size(output_height, 1)
17 .channels(17)
18 .iterations(3)
XNNPACK Teama5cb6772020-10-20 18:04:33 -070019 .TestNHWCxF32();
Marat Dukhan69722492019-11-11 19:55:50 -080020 }
21 }
22}
23
Marat Dukhanefc47b82019-11-18 09:25:38 -080024TEST(RESIZE_BILINEAR_NHWC_F32, aligned_centers_upscale_x) {
Marat Dukhan69722492019-11-11 19:55:50 -080025 for (size_t input_width = 1; input_width <= 3; input_width++) {
26 for (size_t output_width = input_width + 1; output_width < 15; output_width *= 3) {
27 ResizeBilinearOperatorTester()
28 .input_size(1, input_width)
29 .output_size(1, output_width)
30 .channels(17)
31 .iterations(3)
XNNPACK Teama5cb6772020-10-20 18:04:33 -070032 .TestNHWCxF32();
Marat Dukhan69722492019-11-11 19:55:50 -080033 }
34 }
35}
36
Marat Dukhanefc47b82019-11-18 09:25:38 -080037TEST(RESIZE_BILINEAR_NHWC_F32, aligned_centers_upscale) {
Marat Dukhan69722492019-11-11 19:55:50 -080038 for (size_t output_height = 3; output_height <= 5; output_height += 2) {
39 for (size_t output_width = 3; output_width <= 5; output_width += 2) {
40 ResizeBilinearOperatorTester()
41 .input_size(2, 2)
42 .output_size(output_height, output_width)
43 .channels(17)
44 .iterations(3)
XNNPACK Teama5cb6772020-10-20 18:04:33 -070045 .TestNHWCxF32();
Marat Dukhan69722492019-11-11 19:55:50 -080046 }
47 }
48}
49
Marat Dukhanefc47b82019-11-18 09:25:38 -080050TEST(RESIZE_BILINEAR_NHWC_F32, aligned_centers_downscale_y) {
Marat Dukhan69722492019-11-11 19:55:50 -080051 for (size_t output_height = 1; output_height <= 3; output_height++) {
52 for (size_t input_height = output_height + 1; input_height < 15; input_height *= 3) {
53 ResizeBilinearOperatorTester()
54 .input_size(input_height, 1)
55 .output_size(output_height, 1)
56 .channels(17)
57 .iterations(3)
XNNPACK Teama5cb6772020-10-20 18:04:33 -070058 .TestNHWCxF32();
Marat Dukhan69722492019-11-11 19:55:50 -080059 }
60 }
61}
62
Marat Dukhanefc47b82019-11-18 09:25:38 -080063TEST(RESIZE_BILINEAR_NHWC_F32, aligned_centers_downscale_x) {
Marat Dukhan69722492019-11-11 19:55:50 -080064 for (size_t output_width = 1; output_width <= 3; output_width++) {
65 for (size_t input_width = output_width + 1; input_width < 15; input_width *= 3) {
66 ResizeBilinearOperatorTester()
67 .input_size(1, input_width)
68 .output_size(1, output_width)
69 .channels(17)
70 .iterations(3)
XNNPACK Teama5cb6772020-10-20 18:04:33 -070071 .TestNHWCxF32();
Marat Dukhan69722492019-11-11 19:55:50 -080072 }
73 }
74}
75
Marat Dukhanefc47b82019-11-18 09:25:38 -080076TEST(RESIZE_BILINEAR_NHWC_F32, aligned_centers_downscale) {
Marat Dukhan69722492019-11-11 19:55:50 -080077 for (size_t input_height = 3; input_height <= 5; input_height += 2) {
78 for (size_t input_width = 3; input_width <= 5; input_width += 2) {
79 ResizeBilinearOperatorTester()
80 .input_size(input_height, input_width)
81 .output_size(2, 2)
82 .channels(17)
83 .iterations(3)
XNNPACK Teama5cb6772020-10-20 18:04:33 -070084 .TestNHWCxF32();
Marat Dukhan69722492019-11-11 19:55:50 -080085 }
86 }
87}
88
Marat Dukhanefc47b82019-11-18 09:25:38 -080089TEST(RESIZE_BILINEAR_NHWC_F32, aligned_centers_identical_size) {
Marat Dukhan69722492019-11-11 19:55:50 -080090 for (size_t height = 1; height < 10; height *= 3) {
91 for (size_t width = 1; width < 10; width *= 3) {
92 ResizeBilinearOperatorTester()
93 .input_size(height, width)
94 .output_size(height, width)
95 .channels(17)
96 .iterations(3)
XNNPACK Teama5cb6772020-10-20 18:04:33 -070097 .TestNHWCxF32();
Marat Dukhan69722492019-11-11 19:55:50 -080098 }
99 }
100}
101
Marat Dukhanefc47b82019-11-18 09:25:38 -0800102TEST(RESIZE_BILINEAR_NHWC_F32, aligned_centers_varying_channels) {
Marat Dukhan69722492019-11-11 19:55:50 -0800103 for (size_t input_size = 2; input_size <= 6; input_size += 2) {
104 for (size_t output_size = 2; output_size <= 6; output_size += 2) {
105 for (size_t channels = 15; channels <= 19; channels++) {
106 ResizeBilinearOperatorTester()
XNNPACK Teama5cb6772020-10-20 18:04:33 -0700107 .input_size(output_size, output_size)
Marat Dukhan69722492019-11-11 19:55:50 -0800108 .output_size(output_size, output_size)
109 .channels(channels)
110 .iterations(3)
XNNPACK Teama5cb6772020-10-20 18:04:33 -0700111 .TestNHWCxF32();
Marat Dukhan69722492019-11-11 19:55:50 -0800112 }
113 }
114 }
115}
116
Marat Dukhanefc47b82019-11-18 09:25:38 -0800117TEST(RESIZE_BILINEAR_NHWC_F32, aligned_centers_with_input_stride) {
Marat Dukhan69722492019-11-11 19:55:50 -0800118 for (size_t input_size = 2; input_size <= 6; input_size += 2) {
119 for (size_t output_size = 2; output_size <= 6; output_size += 2) {
120 for (size_t channels = 15; channels <= 19; channels++) {
121 ResizeBilinearOperatorTester()
XNNPACK Teama5cb6772020-10-20 18:04:33 -0700122 .input_size(output_size, output_size)
Marat Dukhan69722492019-11-11 19:55:50 -0800123 .output_size(output_size, output_size)
124 .channels(channels)
125 .input_pixel_stride(23)
126 .iterations(3)
XNNPACK Teama5cb6772020-10-20 18:04:33 -0700127 .TestNHWCxF32();
Marat Dukhan69722492019-11-11 19:55:50 -0800128 }
129 }
130 }
131}
132
Marat Dukhanefc47b82019-11-18 09:25:38 -0800133TEST(RESIZE_BILINEAR_NHWC_F32, aligned_centers_with_output_stride) {
Marat Dukhan69722492019-11-11 19:55:50 -0800134 for (size_t input_size = 2; input_size <= 6; input_size += 2) {
135 for (size_t output_size = 2; output_size <= 6; output_size += 2) {
136 for (size_t channels = 15; channels <= 19; channels++) {
137 ResizeBilinearOperatorTester()
XNNPACK Teama5cb6772020-10-20 18:04:33 -0700138 .input_size(output_size, output_size)
Marat Dukhan69722492019-11-11 19:55:50 -0800139 .output_size(output_size, output_size)
140 .channels(channels)
141 .output_pixel_stride(29)
142 .iterations(3)
XNNPACK Teama5cb6772020-10-20 18:04:33 -0700143 .TestNHWCxF32();
Marat Dukhan69722492019-11-11 19:55:50 -0800144 }
145 }
146 }
147}
148
Marat Dukhanefc47b82019-11-18 09:25:38 -0800149TEST(RESIZE_BILINEAR_NHWC_F32, aligned_centers_varying_batch_size) {
Marat Dukhan69722492019-11-11 19:55:50 -0800150 for (size_t input_size = 2; input_size <= 6; input_size += 2) {
151 for (size_t output_size = 2; output_size <= 6; output_size += 2) {
152 for (size_t batch_size = 2; batch_size <= 3; batch_size++) {
153 ResizeBilinearOperatorTester()
XNNPACK Teama5cb6772020-10-20 18:04:33 -0700154 .batch_size(batch_size)
Marat Dukhan69722492019-11-11 19:55:50 -0800155 .input_size(output_size, output_size)
156 .output_size(output_size, output_size)
157 .iterations(3)
XNNPACK Teama5cb6772020-10-20 18:04:33 -0700158 .TestNHWCxF32();
Marat Dukhan69722492019-11-11 19:55:50 -0800159 }
160 }
161 }
162}
163
Marat Dukhanefc47b82019-11-18 09:25:38 -0800164TEST(RESIZE_BILINEAR_NHWC_F32, aligned_corners_upscale_y) {
Marat Dukhan69722492019-11-11 19:55:50 -0800165 for (size_t input_height = 1; input_height <= 3; input_height++) {
166 for (size_t output_height = input_height + 1; output_height < 15; output_height *= 3) {
167 ResizeBilinearOperatorTester()
168 .align_corners(true)
169 .input_size(input_height, 1)
170 .output_size(output_height, 1)
171 .channels(17)
172 .iterations(3)
XNNPACK Teama5cb6772020-10-20 18:04:33 -0700173 .TestNHWCxF32();
Marat Dukhan69722492019-11-11 19:55:50 -0800174 }
175 }
176}
177
Marat Dukhanefc47b82019-11-18 09:25:38 -0800178TEST(RESIZE_BILINEAR_NHWC_F32, aligned_corners_upscale_x) {
Marat Dukhan69722492019-11-11 19:55:50 -0800179 for (size_t input_width = 1; input_width <= 3; input_width++) {
180 for (size_t output_width = input_width + 1; output_width < 15; output_width *= 3) {
181 ResizeBilinearOperatorTester()
182 .align_corners(true)
183 .input_size(1, input_width)
184 .output_size(1, output_width)
185 .channels(17)
186 .iterations(3)
XNNPACK Teama5cb6772020-10-20 18:04:33 -0700187 .TestNHWCxF32();
Marat Dukhan69722492019-11-11 19:55:50 -0800188 }
189 }
190}
191
Marat Dukhanefc47b82019-11-18 09:25:38 -0800192TEST(RESIZE_BILINEAR_NHWC_F32, aligned_corners_upscale) {
Marat Dukhan69722492019-11-11 19:55:50 -0800193 for (size_t output_height = 3; output_height <= 5; output_height += 2) {
194 for (size_t output_width = 3; output_width <= 5; output_width += 2) {
195 ResizeBilinearOperatorTester()
196 .align_corners(true)
197 .input_size(2, 2)
198 .output_size(output_height, output_width)
199 .channels(17)
200 .iterations(3)
XNNPACK Teama5cb6772020-10-20 18:04:33 -0700201 .TestNHWCxF32();
Marat Dukhan69722492019-11-11 19:55:50 -0800202 }
203 }
204}
205
Marat Dukhanefc47b82019-11-18 09:25:38 -0800206TEST(RESIZE_BILINEAR_NHWC_F32, aligned_corners_downscale_y) {
Marat Dukhan69722492019-11-11 19:55:50 -0800207 for (size_t output_height = 2; output_height <= 3; output_height++) {
208 for (size_t input_height = output_height + 1; input_height < 15; input_height *= 3) {
209 ResizeBilinearOperatorTester()
210 .input_size(input_height, 1)
211 .output_size(output_height, 1)
212 .channels(17)
213 .iterations(3)
XNNPACK Teama5cb6772020-10-20 18:04:33 -0700214 .TestNHWCxF32();
Marat Dukhan69722492019-11-11 19:55:50 -0800215 }
216 }
217}
218
Marat Dukhanefc47b82019-11-18 09:25:38 -0800219TEST(RESIZE_BILINEAR_NHWC_F32, aligned_corners_downscale_x) {
Marat Dukhan69722492019-11-11 19:55:50 -0800220 for (size_t output_width = 2; output_width <= 3; output_width++) {
221 for (size_t input_width = output_width + 1; input_width < 15; input_width *= 3) {
222 ResizeBilinearOperatorTester()
223 .input_size(1, input_width)
224 .output_size(1, output_width)
225 .channels(17)
226 .iterations(3)
XNNPACK Teama5cb6772020-10-20 18:04:33 -0700227 .TestNHWCxF32();
Marat Dukhan69722492019-11-11 19:55:50 -0800228 }
229 }
230}
231
Marat Dukhanefc47b82019-11-18 09:25:38 -0800232TEST(RESIZE_BILINEAR_NHWC_F32, aligned_corners_downscale) {
Marat Dukhan69722492019-11-11 19:55:50 -0800233 for (size_t input_height = 3; input_height <= 5; input_height += 2) {
234 for (size_t input_width = 3; input_width <= 5; input_width += 2) {
235 ResizeBilinearOperatorTester()
236 .input_size(input_height, input_width)
237 .output_size(2, 2)
238 .channels(17)
239 .iterations(3)
XNNPACK Teama5cb6772020-10-20 18:04:33 -0700240 .TestNHWCxF32();
Marat Dukhan69722492019-11-11 19:55:50 -0800241 }
242 }
243}
244
Marat Dukhanefc47b82019-11-18 09:25:38 -0800245TEST(RESIZE_BILINEAR_NHWC_F32, aligned_corners_identical_size) {
Marat Dukhan69722492019-11-11 19:55:50 -0800246 for (size_t height = 1; height < 10; height *= 3) {
247 for (size_t width = 1; width < 10; width *= 3) {
248 ResizeBilinearOperatorTester()
249 .align_corners(true)
250 .input_size(height, width)
251 .output_size(height, width)
252 .channels(17)
253 .iterations(3)
XNNPACK Teama5cb6772020-10-20 18:04:33 -0700254 .TestNHWCxF32();
Marat Dukhan69722492019-11-11 19:55:50 -0800255 }
256 }
257}
258
Marat Dukhanefc47b82019-11-18 09:25:38 -0800259TEST(RESIZE_BILINEAR_NHWC_F32, aligned_corners_varying_channels) {
Marat Dukhan69722492019-11-11 19:55:50 -0800260 for (size_t input_size = 2; input_size <= 6; input_size += 2) {
261 for (size_t output_size = 2; output_size <= 6; output_size += 2) {
262 for (size_t channels = 15; channels <= 19; channels++) {
263 ResizeBilinearOperatorTester()
XNNPACK Teama5cb6772020-10-20 18:04:33 -0700264 .align_corners(true)
Marat Dukhan69722492019-11-11 19:55:50 -0800265 .input_size(output_size, output_size)
266 .output_size(output_size, output_size)
267 .channels(channels)
268 .iterations(3)
XNNPACK Teama5cb6772020-10-20 18:04:33 -0700269 .TestNHWCxF32();
Marat Dukhan69722492019-11-11 19:55:50 -0800270 }
271 }
272 }
273}
274
Marat Dukhanefc47b82019-11-18 09:25:38 -0800275TEST(RESIZE_BILINEAR_NHWC_F32, aligned_corners_with_input_stride) {
Marat Dukhan69722492019-11-11 19:55:50 -0800276 for (size_t input_size = 2; input_size <= 6; input_size += 2) {
277 for (size_t output_size = 2; output_size <= 6; output_size += 2) {
278 for (size_t channels = 15; channels <= 19; channels++) {
279 ResizeBilinearOperatorTester()
XNNPACK Teama5cb6772020-10-20 18:04:33 -0700280 .align_corners(true)
Marat Dukhan69722492019-11-11 19:55:50 -0800281 .input_size(output_size, output_size)
282 .output_size(output_size, output_size)
283 .channels(channels)
284 .input_pixel_stride(23)
285 .iterations(3)
XNNPACK Teama5cb6772020-10-20 18:04:33 -0700286 .TestNHWCxF32();
Marat Dukhan69722492019-11-11 19:55:50 -0800287 }
288 }
289 }
290}
291
Marat Dukhanefc47b82019-11-18 09:25:38 -0800292TEST(RESIZE_BILINEAR_NHWC_F32, aligned_corners_with_output_stride) {
Marat Dukhan69722492019-11-11 19:55:50 -0800293 for (size_t input_size = 2; input_size <= 6; input_size += 2) {
294 for (size_t output_size = 2; output_size <= 6; output_size += 2) {
295 for (size_t channels = 15; channels <= 19; channels++) {
296 ResizeBilinearOperatorTester()
XNNPACK Teama5cb6772020-10-20 18:04:33 -0700297 .align_corners(true)
Marat Dukhan69722492019-11-11 19:55:50 -0800298 .input_size(output_size, output_size)
299 .output_size(output_size, output_size)
300 .channels(channels)
301 .output_pixel_stride(29)
302 .iterations(3)
XNNPACK Teama5cb6772020-10-20 18:04:33 -0700303 .TestNHWCxF32();
Marat Dukhan69722492019-11-11 19:55:50 -0800304 }
305 }
306 }
307}
308
Marat Dukhanefc47b82019-11-18 09:25:38 -0800309TEST(RESIZE_BILINEAR_NHWC_F32, aligned_corners_varying_batch_size) {
Marat Dukhan69722492019-11-11 19:55:50 -0800310 for (size_t input_size = 2; input_size <= 6; input_size += 2) {
311 for (size_t output_size = 2; output_size <= 6; output_size += 2) {
312 for (size_t batch_size = 2; batch_size <= 3; batch_size++) {
313 ResizeBilinearOperatorTester()
XNNPACK Teama5cb6772020-10-20 18:04:33 -0700314 .align_corners(true)
Marat Dukhan69722492019-11-11 19:55:50 -0800315 .batch_size(batch_size)
316 .input_size(output_size, output_size)
317 .output_size(output_size, output_size)
318 .iterations(3)
XNNPACK Teama5cb6772020-10-20 18:04:33 -0700319 .TestNHWCxF32();
Marat Dukhan69722492019-11-11 19:55:50 -0800320 }
321 }
322 }
323}
324
Marat Dukhanefc47b82019-11-18 09:25:38 -0800325TEST(RESIZE_BILINEAR_NHWC_F32, tf_mode_aligned_centers_upscale_y) {
Marat Dukhan69722492019-11-11 19:55:50 -0800326 for (size_t input_height = 1; input_height <= 3; input_height++) {
327 for (size_t output_height = input_height + 1; output_height < 15; output_height *= 3) {
328 ResizeBilinearOperatorTester()
329 .tf_legacy_mode(true)
330 .input_size(input_height, 1)
331 .output_size(output_height, 1)
332 .channels(17)
333 .iterations(3)
XNNPACK Teama5cb6772020-10-20 18:04:33 -0700334 .TestNHWCxF32();
Marat Dukhan69722492019-11-11 19:55:50 -0800335 }
336 }
337}
338
Marat Dukhanefc47b82019-11-18 09:25:38 -0800339TEST(RESIZE_BILINEAR_NHWC_F32, tf_mode_aligned_centers_upscale_x) {
Marat Dukhan69722492019-11-11 19:55:50 -0800340 for (size_t input_width = 1; input_width <= 3; input_width++) {
341 for (size_t output_width = input_width + 1; output_width < 15; output_width *= 3) {
342 ResizeBilinearOperatorTester()
343 .tf_legacy_mode(true)
344 .input_size(1, input_width)
345 .output_size(1, output_width)
346 .channels(17)
347 .iterations(3)
XNNPACK Teama5cb6772020-10-20 18:04:33 -0700348 .TestNHWCxF32();
Marat Dukhan69722492019-11-11 19:55:50 -0800349 }
350 }
351}
352
Marat Dukhanefc47b82019-11-18 09:25:38 -0800353TEST(RESIZE_BILINEAR_NHWC_F32, tf_mode_aligned_centers_upscale) {
Marat Dukhan69722492019-11-11 19:55:50 -0800354 for (size_t output_height = 3; output_height <= 5; output_height += 2) {
355 for (size_t output_width = 3; output_width <= 5; output_width += 2) {
356 ResizeBilinearOperatorTester()
357 .tf_legacy_mode(true)
358 .input_size(2, 2)
359 .output_size(output_height, output_width)
360 .channels(17)
361 .iterations(3)
XNNPACK Teama5cb6772020-10-20 18:04:33 -0700362 .TestNHWCxF32();
Marat Dukhan69722492019-11-11 19:55:50 -0800363 }
364 }
365}
366
Marat Dukhanefc47b82019-11-18 09:25:38 -0800367TEST(RESIZE_BILINEAR_NHWC_F32, tf_mode_aligned_centers_downscale_y) {
Marat Dukhan69722492019-11-11 19:55:50 -0800368 for (size_t output_height = 1; output_height <= 3; output_height++) {
369 for (size_t input_height = output_height + 1; input_height < 15; input_height *= 3) {
370 ResizeBilinearOperatorTester()
371 .tf_legacy_mode(true)
372 .input_size(input_height, 1)
373 .output_size(output_height, 1)
374 .channels(17)
375 .iterations(3)
XNNPACK Teama5cb6772020-10-20 18:04:33 -0700376 .TestNHWCxF32();
Marat Dukhan69722492019-11-11 19:55:50 -0800377 }
378 }
379}
380
Marat Dukhanefc47b82019-11-18 09:25:38 -0800381TEST(RESIZE_BILINEAR_NHWC_F32, tf_mode_aligned_centers_downscale_x) {
Marat Dukhan69722492019-11-11 19:55:50 -0800382 for (size_t output_width = 1; output_width <= 3; output_width++) {
383 for (size_t input_width = output_width + 1; input_width < 15; input_width *= 3) {
384 ResizeBilinearOperatorTester()
385 .tf_legacy_mode(true)
386 .input_size(1, input_width)
387 .output_size(1, output_width)
388 .channels(17)
389 .iterations(3)
XNNPACK Teama5cb6772020-10-20 18:04:33 -0700390 .TestNHWCxF32();
Marat Dukhan69722492019-11-11 19:55:50 -0800391 }
392 }
393}
394
Marat Dukhanefc47b82019-11-18 09:25:38 -0800395TEST(RESIZE_BILINEAR_NHWC_F32, tf_mode_aligned_centers_downscale) {
Marat Dukhan69722492019-11-11 19:55:50 -0800396 for (size_t input_height = 3; input_height <= 5; input_height += 2) {
397 for (size_t input_width = 3; input_width <= 5; input_width += 2) {
398 ResizeBilinearOperatorTester()
399 .tf_legacy_mode(true)
400 .input_size(input_height, input_width)
401 .output_size(2, 2)
402 .channels(17)
403 .iterations(3)
XNNPACK Teama5cb6772020-10-20 18:04:33 -0700404 .TestNHWCxF32();
Marat Dukhan69722492019-11-11 19:55:50 -0800405 }
406 }
407}
408
Marat Dukhanefc47b82019-11-18 09:25:38 -0800409TEST(RESIZE_BILINEAR_NHWC_F32, tf_mode_aligned_centers_identical_size) {
Marat Dukhan69722492019-11-11 19:55:50 -0800410 for (size_t height = 1; height < 10; height *= 3) {
411 for (size_t width = 1; width < 10; width *= 3) {
412 ResizeBilinearOperatorTester()
413 .tf_legacy_mode(true)
414 .input_size(height, width)
415 .output_size(height, width)
416 .channels(17)
417 .iterations(3)
XNNPACK Teama5cb6772020-10-20 18:04:33 -0700418 .TestNHWCxF32();
Marat Dukhan69722492019-11-11 19:55:50 -0800419 }
420 }
421}
422
Marat Dukhanefc47b82019-11-18 09:25:38 -0800423TEST(RESIZE_BILINEAR_NHWC_F32, tf_mode_aligned_centers_varying_channels) {
Marat Dukhan69722492019-11-11 19:55:50 -0800424 for (size_t input_size = 2; input_size <= 6; input_size += 2) {
425 for (size_t output_size = 2; output_size <= 6; output_size += 2) {
426 for (size_t channels = 15; channels <= 19; channels++) {
427 ResizeBilinearOperatorTester()
428 .tf_legacy_mode(true)
429 .input_size(output_size, output_size)
430 .output_size(output_size, output_size)
431 .channels(channels)
432 .iterations(3)
XNNPACK Teama5cb6772020-10-20 18:04:33 -0700433 .TestNHWCxF32();
Marat Dukhan69722492019-11-11 19:55:50 -0800434 }
435 }
436 }
437}
438
Marat Dukhanefc47b82019-11-18 09:25:38 -0800439TEST(RESIZE_BILINEAR_NHWC_F32, tf_mode_aligned_centers_with_input_stride) {
Marat Dukhan69722492019-11-11 19:55:50 -0800440 for (size_t input_size = 2; input_size <= 6; input_size += 2) {
441 for (size_t output_size = 2; output_size <= 6; output_size += 2) {
442 for (size_t channels = 15; channels <= 19; channels++) {
443 ResizeBilinearOperatorTester()
444 .tf_legacy_mode(true)
445 .input_size(output_size, output_size)
446 .output_size(output_size, output_size)
447 .channels(channels)
448 .input_pixel_stride(23)
449 .iterations(3)
XNNPACK Teama5cb6772020-10-20 18:04:33 -0700450 .TestNHWCxF32();
Marat Dukhan69722492019-11-11 19:55:50 -0800451 }
452 }
453 }
454}
455
Marat Dukhanefc47b82019-11-18 09:25:38 -0800456TEST(RESIZE_BILINEAR_NHWC_F32, tf_mode_aligned_centers_with_output_stride) {
Marat Dukhan69722492019-11-11 19:55:50 -0800457 for (size_t input_size = 2; input_size <= 6; input_size += 2) {
458 for (size_t output_size = 2; output_size <= 6; output_size += 2) {
459 for (size_t channels = 15; channels <= 19; channels++) {
460 ResizeBilinearOperatorTester()
461 .tf_legacy_mode(true)
462 .input_size(output_size, output_size)
463 .output_size(output_size, output_size)
464 .channels(channels)
465 .output_pixel_stride(29)
466 .iterations(3)
XNNPACK Teama5cb6772020-10-20 18:04:33 -0700467 .TestNHWCxF32();
Marat Dukhan69722492019-11-11 19:55:50 -0800468 }
469 }
470 }
471}
472
Marat Dukhanefc47b82019-11-18 09:25:38 -0800473TEST(RESIZE_BILINEAR_NHWC_F32, tf_mode_aligned_centers_varying_batch_size) {
Marat Dukhan69722492019-11-11 19:55:50 -0800474 for (size_t input_size = 2; input_size <= 6; input_size += 2) {
475 for (size_t output_size = 2; output_size <= 6; output_size += 2) {
476 for (size_t batch_size = 2; batch_size <= 3; batch_size++) {
477 ResizeBilinearOperatorTester()
478 .tf_legacy_mode(true)
479 .batch_size(batch_size)
480 .input_size(output_size, output_size)
481 .output_size(output_size, output_size)
482 .iterations(3)
XNNPACK Teama5cb6772020-10-20 18:04:33 -0700483 .TestNHWCxF32();
Marat Dukhan69722492019-11-11 19:55:50 -0800484 }
485 }
486 }
487}