xref: /aosp_15_r20/external/armnn/delegate/test/PadTest.cpp (revision 89c4ff92f2867872bb9e2354d150bf0c8c502810)
1 //
2 // Copyright © 2020, 2023 Arm Ltd and Contributors. All rights reserved.
3 // SPDX-License-Identifier: MIT
4 //
5 
6 #include "PadTestHelper.hpp"
7 
8 #include <armnn_delegate.hpp>
9 
10 #include <flatbuffers/flatbuffers.h>
11 #include <schema_generated.h>
12 
13 #include <doctest/doctest.h>
14 
15 namespace armnnDelegate
16 {
17 
Pad2dTest(std::vector<armnn::BackendId> & backends,tflite::BuiltinOperator padOperatorCode=tflite::BuiltinOperator_PAD,float pad=0.0f)18 void Pad2dTest(std::vector<armnn::BackendId>& backends,
19                tflite::BuiltinOperator padOperatorCode = tflite::BuiltinOperator_PAD,
20                float pad = 0.0f)
21 {
22     // Set input data
23     std::vector<int32_t> inputShape { 2, 2, 2 };
24     std::vector<int32_t> outputShape { 3, 5, 6 };
25     std::vector<int32_t> paddingShape { 3, 2 };
26 
27     std::vector<float> inputValues = { 0.0f,  4.0f,
28                                        2.0f, -5.0f,
29                                        6.0f,  1.0f,
30                                        5.0f, -2.0f };
31 
32     std::vector<float> expectedOutputValues = { pad, pad, pad, pad, pad, pad,
33                                                 pad, pad, pad, pad, pad, pad,
34                                                 pad, pad, 0.0f, 4.0f, pad, pad,
35                                                 pad, pad, 2.0f, -5.0f, pad, pad,
36                                                 pad, pad, pad, pad, pad, pad,
37 
38                                                 pad, pad, pad, pad, pad, pad,
39                                                 pad, pad, pad, pad, pad, pad,
40                                                 pad, pad, 6.0f, 1.0f, pad, pad,
41                                                 pad, pad, 5.0f, -2.0f, pad, pad,
42                                                 pad, pad, pad, pad, pad, pad,
43 
44                                                 pad, pad, pad, pad, pad, pad,
45                                                 pad, pad, pad, pad, pad, pad,
46                                                 pad, pad, pad, pad, pad, pad,
47                                                 pad, pad, pad, pad, pad, pad,
48                                                 pad, pad, pad, pad, pad, pad };
49 
50     std::vector<int32_t> paddingDim = { 0, 1, 2, 1, 2, 2 };
51 
52     PadTest<float>(padOperatorCode,
53                    ::tflite::TensorType_FLOAT32,
54                    backends,
55                    inputShape,
56                    paddingShape,
57                    outputShape,
58                    inputValues,
59                    paddingDim,
60                    expectedOutputValues,
61                    pad);
62 }
63 
Pad3dTest(std::vector<armnn::BackendId> & backends,tflite::BuiltinOperator padOperatorCode=tflite::BuiltinOperator_PAD,float pad=0.0f)64 void Pad3dTest(std::vector<armnn::BackendId>& backends,
65                tflite::BuiltinOperator padOperatorCode = tflite::BuiltinOperator_PAD,
66                float pad = 0.0f)
67 {
68     // Set input data
69     std::vector<int32_t> inputShape { 2, 2, 2 };
70     std::vector<int32_t> outputShape { 3, 5, 6 };
71     std::vector<int32_t> paddingShape { 3, 2 };
72 
73     std::vector<float> inputValues = { 0.0f, 4.0f,
74                                        2.0f, 5.0f,
75                                        6.0f, 1.0f,
76                                        5.0f, 2.0f };
77 
78     std::vector<float> expectedOutputValues = { pad, pad, pad, pad, pad, pad,
79                                                 pad, pad, pad, pad, pad, pad,
80                                                 pad, pad, 0.0f, 4.0f, pad, pad,
81                                                 pad, pad, 2.0f, 5.0f, pad, pad,
82                                                 pad, pad, pad, pad, pad, pad,
83 
84                                                 pad, pad, pad, pad, pad, pad,
85                                                 pad, pad, pad, pad, pad, pad,
86                                                 pad, pad, 6.0f, 1.0f, pad, pad,
87                                                 pad, pad, 5.0f, 2.0f, pad, pad,
88                                                 pad, pad, pad, pad, pad, pad,
89 
90                                                 pad, pad, pad, pad, pad, pad,
91                                                 pad, pad, pad, pad, pad, pad,
92                                                 pad, pad, pad, pad, pad, pad,
93                                                 pad, pad, pad, pad, pad, pad,
94                                                 pad, pad, pad, pad, pad, pad };
95 
96     std::vector<int32_t> paddingDim = { 0, 1, 2, 1, 2, 2 };
97 
98     PadTest<float>(padOperatorCode,
99                    ::tflite::TensorType_FLOAT32,
100                    backends,
101                    inputShape,
102                    paddingShape,
103                    outputShape,
104                    inputValues,
105                    paddingDim,
106                    expectedOutputValues,
107                    pad);
108 }
109 
Pad4dTest(std::vector<armnn::BackendId> & backends,tflite::BuiltinOperator padOperatorCode=tflite::BuiltinOperator_PAD,float pad=0.0f)110 void Pad4dTest(std::vector<armnn::BackendId>& backends,
111                tflite::BuiltinOperator padOperatorCode = tflite::BuiltinOperator_PAD,
112                float pad = 0.0f)
113 {
114     // Set input data
115     std::vector<int32_t> inputShape { 2, 2, 3, 2 };
116     std::vector<int32_t> outputShape { 4, 5, 7, 4 };
117     std::vector<int32_t> paddingShape { 4, 2 };
118 
119     std::vector<float> inputValues = { 0.0f,  1.0f,
120                                        2.0f,  3.0f,
121                                        4.0f,  5.0f,
122 
123                                        6.0f,  7.0f,
124                                        8.0f,  9.0f,
125                                        10.0f, 11.0f,
126 
127                                        12.0f, 13.0f,
128                                        14.0f, 15.0f,
129                                        16.0f, 17.0f,
130 
131                                        18.0f, 19.0f,
132                                        20.0f, 21.0f,
133                                        22.0f, 23.0f };
134 
135     std::vector<float> expectedOutputValues = { pad, pad, pad, pad,
136                                                 pad, pad, pad, pad,
137                                                 pad, pad, pad, pad,
138                                                 pad, pad, pad, pad,
139                                                 pad, pad, pad, pad,
140                                                 pad, pad, pad, pad,
141                                                 pad, pad, pad, pad,
142 
143                                                 pad, pad, pad, pad,
144                                                 pad, pad, pad, pad,
145                                                 pad, pad, pad, pad,
146                                                 pad, pad, pad, pad,
147                                                 pad, pad, pad, pad,
148                                                 pad, pad, pad, pad,
149                                                 pad, pad, pad, pad,
150 
151                                                 pad, pad, pad, pad,
152                                                 pad, pad, pad, pad,
153                                                 pad, pad, pad, pad,
154                                                 pad, pad, pad, pad,
155                                                 pad, pad, pad, pad,
156                                                 pad, pad, pad, pad,
157                                                 pad, pad, pad, pad,
158 
159                                                 pad, pad, pad, pad,
160                                                 pad, pad, pad, pad,
161                                                 pad, pad, pad, pad,
162                                                 pad, pad, pad, pad,
163                                                 pad, pad, pad, pad,
164                                                 pad, pad, pad, pad,
165                                                 pad, pad, pad, pad,
166 
167                                                 pad, pad, pad, pad,
168                                                 pad, pad, pad, pad,
169                                                 pad, pad, pad, pad,
170                                                 pad, pad, pad, pad,
171                                                 pad, pad, pad, pad,
172                                                 pad, pad, pad, pad,
173                                                 pad, pad, pad, pad,
174 
175                                                 pad, pad, pad, pad,
176                                                 pad, pad, pad, pad,
177                                                 pad, pad, pad, pad,
178                                                 pad, pad, pad, pad,
179                                                 pad, pad, pad, pad,
180                                                 pad, pad, pad, pad,
181                                                 pad, pad, pad, pad,
182 
183                                                 pad, pad, pad, pad,
184                                                 pad, pad, pad, pad,
185                                                 pad, pad, pad, pad,
186                                                 pad, pad, pad, pad,
187                                                 pad, pad, pad, pad,
188                                                 pad, pad, pad, pad,
189                                                 pad, pad, pad, pad,
190 
191                                                 pad, pad, pad, pad,
192                                                 pad, pad, pad, pad,
193                                                 pad, pad, pad, pad,
194                                                 pad, 0.0f, 1.0f, pad,
195                                                 pad, 2.0f, 3.0f, pad,
196                                                 pad, 4.0f, 5.0f, pad,
197                                                 pad, pad, pad, pad,
198 
199                                                 pad, pad, pad, pad,
200                                                 pad, pad, pad, pad,
201                                                 pad, pad, pad, pad,
202                                                 pad, 6.0f, 7.0f, pad,
203                                                 pad, 8.0f, 9.0f, pad,
204                                                 pad, 10.0f, 11.0f, pad,
205                                                 pad, pad, pad, pad,
206 
207                                                 pad, pad, pad, pad,
208                                                 pad, pad, pad, pad,
209                                                 pad, pad, pad, pad,
210                                                 pad, pad, pad, pad,
211                                                 pad, pad, pad, pad,
212                                                 pad, pad, pad, pad,
213                                                 pad, pad, pad, pad,
214 
215                                                 pad, pad, pad, pad,
216                                                 pad, pad, pad, pad,
217                                                 pad, pad, pad, pad,
218                                                 pad, pad, pad, pad,
219                                                 pad, pad, pad, pad,
220                                                 pad, pad, pad, pad,
221                                                 pad, pad, pad, pad,
222 
223                                                 pad, pad, pad, pad,
224                                                 pad, pad, pad, pad,
225                                                 pad, pad, pad, pad,
226                                                 pad, pad, pad, pad,
227                                                 pad, pad, pad, pad,
228                                                 pad, pad, pad, pad,
229                                                 pad, pad, pad, pad,
230 
231                                                 pad, pad, pad, pad,
232                                                 pad, pad, pad, pad,
233                                                 pad, pad, pad, pad,
234                                                 pad, 12.0f, 13.0f, pad,
235                                                 pad, 14.0f, 15.0f, pad,
236                                                 pad, 16.0f, 17.0f, pad,
237                                                 pad, pad, pad, pad,
238 
239                                                 pad, pad, pad, pad,
240                                                 pad, pad, pad, pad,
241                                                 pad, pad, pad, pad,
242                                                 pad, 18.0f, 19.0f, pad,
243                                                 pad, 20.0f, 21.0f, pad,
244                                                 pad, 22.0f, 23.0f, pad,
245                                                 pad, pad, pad, pad,
246 
247                                                 pad, pad, pad, pad,
248                                                 pad, pad, pad, pad,
249                                                 pad, pad, pad, pad,
250                                                 pad, pad, pad, pad,
251                                                 pad, pad, pad, pad,
252                                                 pad, pad, pad, pad,
253                                                 pad, pad, pad, pad,
254 
255                                                 pad, pad, pad, pad,
256                                                 pad, pad, pad, pad,
257                                                 pad, pad, pad, pad,
258                                                 pad, pad, pad, pad,
259                                                 pad, pad, pad, pad,
260                                                 pad, pad, pad, pad,
261                                                 pad, pad, pad, pad,
262 
263                                                 pad, pad, pad, pad,
264                                                 pad, pad, pad, pad,
265                                                 pad, pad, pad, pad,
266                                                 pad, pad, pad, pad,
267                                                 pad, pad, pad, pad,
268                                                 pad, pad, pad, pad,
269                                                 pad, pad, pad, pad,
270 
271                                                 pad, pad, pad, pad,
272                                                 pad, pad, pad, pad,
273                                                 pad, pad, pad, pad,
274                                                 pad, pad, pad, pad,
275                                                 pad, pad, pad, pad,
276                                                 pad, pad, pad, pad,
277                                                 pad, pad, pad, pad,
278 
279                                                 pad, pad, pad, pad,
280                                                 pad, pad, pad, pad,
281                                                 pad, pad, pad, pad,
282                                                 pad, pad, pad, pad,
283                                                 pad, pad, pad, pad,
284                                                 pad, pad, pad, pad,
285                                                 pad, pad, pad, pad,
286 
287                                                 pad, pad, pad, pad,
288                                                 pad, pad, pad, pad,
289                                                 pad, pad, pad, pad,
290                                                 pad, pad, pad, pad,
291                                                 pad, pad, pad, pad,
292                                                 pad, pad, pad, pad,
293                                                 pad, pad, pad, pad };
294 
295     std::vector<int32_t> paddingDim = { 1, 1, 2, 1, 3, 1, 1, 1 };
296 
297     PadTest<float>(padOperatorCode,
298                    ::tflite::TensorType_FLOAT32,
299                    backends,
300                    inputShape,
301                    paddingShape,
302                    outputShape,
303                    inputValues,
304                    paddingDim,
305                    expectedOutputValues,
306                    pad);
307 }
308 
PadInt8Test(std::vector<armnn::BackendId> & backends,tflite::BuiltinOperator padOperatorCode=tflite::BuiltinOperator_PAD,int8_t paddingValue=0,int8_t p=3,float quantizationScale=-2.0f,int32_t quantizationOffset=3)309 void PadInt8Test(std::vector<armnn::BackendId>& backends,
310                  tflite::BuiltinOperator padOperatorCode = tflite::BuiltinOperator_PAD,
311                  int8_t paddingValue = 0,
312                  int8_t p = 3,
313                  float quantizationScale = -2.0f,
314                  int32_t quantizationOffset = 3)
315 {
316     // Set input data
317     std::vector<int32_t> inputShape { 2, 2, 2 };
318     std::vector<int32_t> outputShape { 3, 5, 6 };
319     std::vector<int32_t> paddingShape { 3, 2 };
320 
321     std::vector<int8_t> inputValues = { 0,  4,
322                                         2, -5,
323                                         6,  1,
324                                         5, -2 };
325 
326     std::vector<int8_t> expectedOutputValues = { p, p, p, p, p, p,
327                                                  p, p, p, p, p, p,
328                                                  p, p, 0, 4, p, p,
329                                                  p, p, 2, -5, p, p,
330                                                  p, p, p, p, p, p,
331 
332                                                  p, p, p, p, p, p,
333                                                  p, p, p, p, p, p,
334                                                  p, p, 6, 1, p, p,
335                                                  p, p, 5, -2, p, p,
336                                                  p, p, p, p, p, p,
337 
338                                                  p, p, p, p, p, p,
339                                                  p, p, p, p, p, p,
340                                                  p, p, p, p, p, p,
341                                                  p, p, p, p, p, p,
342                                                  p, p, p, p, p, p };
343 
344     std::vector<int32_t> paddingDim = { 0, 1, 2, 1, 2, 2 };
345 
346     PadTest<int8_t>(padOperatorCode,
347                     ::tflite::TensorType_INT8,
348                     backends,
349                     inputShape,
350                     paddingShape,
351                     outputShape,
352                     inputValues,
353                     paddingDim,
354                     expectedOutputValues,
355                     paddingValue,
356                     quantizationScale,
357                     quantizationOffset);
358 }
359 
PadUint8Test(std::vector<armnn::BackendId> & backends,tflite::BuiltinOperator padOperatorCode=tflite::BuiltinOperator_PAD,uint8_t paddingValue=0,uint8_t p=3,float quantizationScale=-2.0f,int32_t quantizationOffset=3)360 void PadUint8Test(std::vector<armnn::BackendId>& backends,
361                   tflite::BuiltinOperator padOperatorCode = tflite::BuiltinOperator_PAD,
362                   uint8_t paddingValue = 0,
363                   uint8_t p = 3,
364                   float quantizationScale = -2.0f,
365                   int32_t quantizationOffset = 3)
366 {
367     // Set input data
368     std::vector<int32_t> inputShape { 2, 2, 2 };
369     std::vector<int32_t> outputShape { 3, 5, 6 };
370     std::vector<int32_t> paddingShape { 3, 2 };
371 
372     std::vector<uint8_t> inputValues = { 0, 4,
373                                          2, 5,
374                                          6, 1,
375                                          5, 2 };
376 
377     std::vector<uint8_t> expectedOutputValues = { p, p, p, p, p, p,
378                                                   p, p, p, p, p, p,
379                                                   p, p, 0, 4, p, p,
380                                                   p, p, 2, 5, p, p,
381                                                   p, p, p, p, p, p,
382 
383                                                   p, p, p, p, p, p,
384                                                   p, p, p, p, p, p,
385                                                   p, p, 6, 1, p, p,
386                                                   p, p, 5, 2, p, p,
387                                                   p, p, p, p, p, p,
388 
389                                                   p, p, p, p, p, p,
390                                                   p, p, p, p, p, p,
391                                                   p, p, p, p, p, p,
392                                                   p, p, p, p, p, p,
393                                                   p, p, p, p, p, p };
394 
395     std::vector<int32_t> paddingDim = { 0, 1, 2, 1, 2, 2 };
396 
397     PadTest<uint8_t>(padOperatorCode,
398                      ::tflite::TensorType_UINT8,
399                      backends,
400                      inputShape,
401                      paddingShape,
402                      outputShape,
403                      inputValues,
404                      paddingDim,
405                      expectedOutputValues,
406                      paddingValue,
407                      quantizationScale,
408                      quantizationOffset);
409 }
410 
411 TEST_SUITE("Pad_CpuRefTests")
412 {
413 
414 TEST_CASE ("Pad2d_CpuRef_Test")
415 {
416     std::vector<armnn::BackendId> backends = { armnn::Compute::CpuRef };
417     Pad2dTest(backends);
418 }
419 
420 TEST_CASE ("Pad3d_CpuRef_Test")
421 {
422     std::vector<armnn::BackendId> backends = { armnn::Compute::CpuRef };
423     Pad3dTest(backends);
424 }
425 
426 TEST_CASE ("Pad4d_CpuRef_Test")
427 {
428     std::vector<armnn::BackendId> backends = { armnn::Compute::CpuRef };
429     Pad4dTest(backends);
430 }
431 
432 TEST_CASE ("Pad_Int8_CpuRef_Test")
433 {
434     std::vector<armnn::BackendId> backends = { armnn::Compute::CpuRef };
435     PadInt8Test(backends);
436 }
437 
438 TEST_CASE ("Pad_Uint8_CpuRef_Test")
439 {
440     std::vector<armnn::BackendId> backends = { armnn::Compute::CpuRef };
441     PadUint8Test(backends);
442 }
443 
444 TEST_CASE ("PadV22d_CpuRef_Test")
445 {
446     std::vector<armnn::BackendId> backends = { armnn::Compute::CpuRef };
447     Pad2dTest(backends, tflite::BuiltinOperator_PADV2, -2.5);
448 }
449 
450 TEST_CASE ("PadV23d_CpuRef_Test")
451 {
452     std::vector<armnn::BackendId> backends = { armnn::Compute::CpuRef };
453     Pad3dTest(backends, tflite::BuiltinOperator_PADV2, 2.0);
454 }
455 
456 TEST_CASE ("PadV24d_CpuRef_Test")
457 {
458     std::vector<armnn::BackendId> backends = { armnn::Compute::CpuRef };
459     Pad4dTest(backends, tflite::BuiltinOperator_PADV2, -1.33);
460 }
461 
462 TEST_CASE ("PadV2_Int8_CpuRef_Test")
463 {
464     std::vector<armnn::BackendId> backends = { armnn::Compute::CpuRef };
465     PadInt8Test(backends, tflite::BuiltinOperator_PADV2, -1, -1);
466 }
467 
468 TEST_CASE ("PadV2_Uint8_CpuRef_Test")
469 {
470     std::vector<armnn::BackendId> backends = { armnn::Compute::CpuRef };
471     PadUint8Test(backends, tflite::BuiltinOperator_PADV2, -1, -1);
472 }
473 
474 } // TEST_SUITE("Pad_CpuRefTests")
475 
476 TEST_SUITE("Pad_CpuAccTests")
477 {
478 
479 TEST_CASE ("Pad2d_CpuAcc_Test")
480 {
481     std::vector<armnn::BackendId> backends = { armnn::Compute::CpuAcc };
482     Pad2dTest(backends);
483 }
484 
485 TEST_CASE ("Pad3d_CpuAcc_Test")
486 {
487     std::vector<armnn::BackendId> backends = { armnn::Compute::CpuAcc };
488     Pad3dTest(backends);
489 }
490 
491 TEST_CASE ("Pad4d_CpuAcc_Test")
492 {
493     std::vector<armnn::BackendId> backends = { armnn::Compute::CpuAcc };
494     Pad4dTest(backends);
495 }
496 
497 TEST_CASE ("Pad_Int8_CpuAcc_Test")
498 {
499     std::vector<armnn::BackendId> backends = { armnn::Compute::CpuAcc };
500     PadInt8Test(backends);
501 }
502 
503 TEST_CASE ("Pad_Uint8_CpuAcc_Test")
504 {
505     std::vector<armnn::BackendId> backends = { armnn::Compute::CpuAcc };
506     PadUint8Test(backends);
507 }
508 
509 TEST_CASE ("PadV22d_CpuAcc_Test")
510 {
511     std::vector<armnn::BackendId> backends = { armnn::Compute::CpuAcc };
512     Pad2dTest(backends, tflite::BuiltinOperator_PADV2, -2.5);
513 }
514 
515 TEST_CASE ("PadV23d_CpuAcc_Test")
516 {
517     std::vector<armnn::BackendId> backends = { armnn::Compute::CpuAcc };
518     Pad3dTest(backends, tflite::BuiltinOperator_PADV2, 2.0);
519 }
520 
521 TEST_CASE ("PadV24d_CpuAcc_Test")
522 {
523     std::vector<armnn::BackendId> backends = { armnn::Compute::CpuAcc };
524     Pad4dTest(backends, tflite::BuiltinOperator_PADV2, -1.33);
525 }
526 
527 TEST_CASE ("PadV2_Int8_CpuAcc_Test")
528 {
529     std::vector<armnn::BackendId> backends = { armnn::Compute::CpuAcc };
530     PadInt8Test(backends, tflite::BuiltinOperator_PADV2, -1, -1);
531 }
532 
533 TEST_CASE ("PadV2_Uint8_CpuAcc_Test")
534 {
535     std::vector<armnn::BackendId> backends = { armnn::Compute::CpuAcc };
536     PadUint8Test(backends, tflite::BuiltinOperator_PADV2, -1, -1);
537 }
538 
539 } // TEST_SUITE("Pad_CpuAccTests")
540 
541 TEST_SUITE("Pad_GpuAccTests")
542 {
543 
544 TEST_CASE ("Pad2d_GpuAcc_Test")
545 {
546     std::vector<armnn::BackendId> backends = { armnn::Compute::GpuAcc };
547     Pad2dTest(backends);
548 }
549 
550 TEST_CASE ("Pad3d_GpuAcc_Test")
551 {
552     std::vector<armnn::BackendId> backends = { armnn::Compute::GpuAcc };
553     Pad3dTest(backends);
554 }
555 
556 TEST_CASE ("Pad4d_GpuAcc_Test")
557 {
558     std::vector<armnn::BackendId> backends = { armnn::Compute::GpuAcc };
559     Pad4dTest(backends);
560 }
561 
562 TEST_CASE ("Pad_Int8_GpuAcc_Test")
563 {
564     std::vector<armnn::BackendId> backends = { armnn::Compute::GpuAcc };
565     PadInt8Test(backends);
566 }
567 
568 TEST_CASE ("Pad_Uint8_GpuAcc_Test")
569 {
570     std::vector<armnn::BackendId> backends = { armnn::Compute::GpuAcc };
571     PadUint8Test(backends);
572 }
573 
574 TEST_CASE ("PadV22d_GpuAcc_Test")
575 {
576     std::vector<armnn::BackendId> backends = { armnn::Compute::GpuAcc };
577     Pad2dTest(backends, tflite::BuiltinOperator_PADV2, -2.5);
578 }
579 
580 TEST_CASE ("PadV23d_GpuAcc_Test")
581 {
582     std::vector<armnn::BackendId> backends = { armnn::Compute::GpuAcc };
583     Pad3dTest(backends, tflite::BuiltinOperator_PADV2, 2.0);
584 }
585 
586 TEST_CASE ("PadV24d_GpuAcc_Test")
587 {
588     std::vector<armnn::BackendId> backends = { armnn::Compute::GpuAcc };
589     Pad4dTest(backends, tflite::BuiltinOperator_PADV2, -1.33);
590 }
591 
592 TEST_CASE ("PadV2_Int8_GpuAcc_Test")
593 {
594     std::vector<armnn::BackendId> backends = { armnn::Compute::GpuAcc };
595     PadInt8Test(backends, tflite::BuiltinOperator_PADV2, -1, -1);
596 }
597 
598 TEST_CASE ("PadV2_Uint8_GpuAcc_Test")
599 {
600     std::vector<armnn::BackendId> backends = { armnn::Compute::GpuAcc };
601     PadUint8Test(backends, tflite::BuiltinOperator_PADV2, -1, -1);
602 }
603 
604 } // TEST_SUITE("Pad_GpuAccTests")
605 
606 } // namespace armnnDelegate