blob: fa6e027865e01c41f3ae2504f995ae42e221e6d5 [file] [log] [blame]
Aron Virginas-Tar70104002018-10-24 15:33:28 +01001//
2// Copyright © 2017 Arm Ltd. All rights reserved.
3// SPDX-License-Identifier: MIT
4//
5
Aron Virginas-Tarc9cc8042018-11-01 16:15:57 +00006#include <backendsCommon/test/EndToEndTestImpl.hpp>
Narumol Prangnawarat8c7324d2019-05-31 16:42:11 +01007
Jan Eilersbca73e12020-03-11 12:52:46 +00008#include <backendsCommon/test/ActivationEndToEndTestImpl.hpp>
James Conroy68a4dbc2019-11-13 15:35:59 +00009#include <backendsCommon/test/ArgMinMaxEndToEndTestImpl.hpp>
Aron Virginas-Tar77bfb5e2019-10-16 17:45:38 +010010#include <backendsCommon/test/ComparisonEndToEndTestImpl.hpp>
Aron Virginas-Tar00d306e2019-08-28 18:08:46 +010011#include <backendsCommon/test/ConcatEndToEndTestImpl.hpp>
Aron Virginas-Tarf97f6da2019-10-01 18:35:44 +010012#include <backendsCommon/test/DepthToSpaceEndToEndTestImpl.hpp>
Narumol Prangnawarat8c7324d2019-05-31 16:42:11 +010013#include <backendsCommon/test/DequantizeEndToEndTestImpl.hpp>
josh minor4a3c6102020-01-06 16:40:46 -060014#include <backendsCommon/test/ElementwiseUnaryEndToEndTestImpl.hpp>
Teresa Charlin44088502020-07-27 11:27:19 +010015#include <backendsCommon/test/FillEndToEndTestImpl.hpp>
Sadik Armagan062e0e92019-10-14 10:31:43 +010016#include <backendsCommon/test/InstanceNormalizationEndToEndTestImpl.hpp>
Nikhil Raj2ec73ac2019-07-22 10:13:22 +010017#include <backendsCommon/test/PreluEndToEndTestImpl.hpp>
James Conroy0800bf52020-05-14 12:46:44 +010018#include <backendsCommon/test/QLstmEndToEndTestImpl.hpp>
Francis Murtaghb3fc2522019-08-09 13:20:50 +010019#include <backendsCommon/test/QuantizedLstmEndToEndTestImpl.hpp>
James Conroy60597842019-07-02 10:57:56 +010020#include <backendsCommon/test/SpaceToDepthEndToEndTestImpl.hpp>
Narumol Prangnawarat0be43382019-05-27 11:29:59 +010021#include <backendsCommon/test/SplitterEndToEndTestImpl.hpp>
Aron Virginas-Tar7a3e2fe2019-06-27 18:54:47 +010022#include <backendsCommon/test/TransposeConvolution2dEndToEndTestImpl.hpp>
Aron Virginas-Tar70104002018-10-24 15:33:28 +010023
Sadik Armagan1625efc2021-06-10 18:24:34 +010024#include <doctest/doctest.h>
Aron Virginas-Tar70104002018-10-24 15:33:28 +010025
Sadik Armagan1625efc2021-06-10 18:24:34 +010026TEST_SUITE("ClEndToEnd")
27{
28std::vector<armnn::BackendId> clDefaultBackends = {armnn::Compute::GpuAcc};
narpra01b9546cf2018-11-20 15:21:28 +000029
Aron Virginas-Tar82046942019-09-09 15:18:29 +010030// Abs
Sadik Armagan1625efc2021-06-10 18:24:34 +010031TEST_CASE("ClAbsEndToEndTestFloat32")
Aron Virginas-Tar82046942019-09-09 15:18:29 +010032{
josh minor4a3c6102020-01-06 16:40:46 -060033 std::vector<float> expectedOutput =
34 {
35 1.f, 1.f, 1.f, 1.f, 5.f, 5.f, 5.f, 5.f,
36 3.f, 3.f, 3.f, 3.f, 4.f, 4.f, 4.f, 4.f
37 };
38
Sadik Armagan1625efc2021-06-10 18:24:34 +010039 ElementwiseUnarySimpleEndToEnd<armnn::DataType::Float32>(clDefaultBackends,
josh minor4a3c6102020-01-06 16:40:46 -060040 UnaryOperation::Abs,
41 expectedOutput);
Aron Virginas-Tar82046942019-09-09 15:18:29 +010042}
43
44// Constant
Sadik Armagan1625efc2021-06-10 18:24:34 +010045TEST_CASE("ConstantUsage_Cl_Float32")
Aron Virginas-Tar70104002018-10-24 15:33:28 +010046{
Sadik Armagan1625efc2021-06-10 18:24:34 +010047 ConstantUsageFloat32Test(clDefaultBackends);
narpra01b9546cf2018-11-20 15:21:28 +000048}
49
Sadik Armagan1625efc2021-06-10 18:24:34 +010050TEST_CASE("ClConcatEndToEndDim0Test")
narpra01b9546cf2018-11-20 15:21:28 +000051{
Sadik Armagan1625efc2021-06-10 18:24:34 +010052 ConcatDim0EndToEnd<armnn::DataType::Float32>(clDefaultBackends);
narpra01b9546cf2018-11-20 15:21:28 +000053}
54
Sadik Armagan1625efc2021-06-10 18:24:34 +010055TEST_CASE("ClConcatEndToEndDim0Uint8Test")
narpra01b9546cf2018-11-20 15:21:28 +000056{
Sadik Armagan1625efc2021-06-10 18:24:34 +010057 ConcatDim0EndToEnd<armnn::DataType::QAsymmU8>(clDefaultBackends);
narpra01b9546cf2018-11-20 15:21:28 +000058}
59
Sadik Armagan1625efc2021-06-10 18:24:34 +010060TEST_CASE("ClConcatEndToEndDim1Test")
narpra01b9546cf2018-11-20 15:21:28 +000061{
Sadik Armagan1625efc2021-06-10 18:24:34 +010062 ConcatDim1EndToEnd<armnn::DataType::Float32>(clDefaultBackends);
narpra01b9546cf2018-11-20 15:21:28 +000063}
64
Sadik Armagan1625efc2021-06-10 18:24:34 +010065TEST_CASE("ClConcatEndToEndDim1Uint8Test")
narpra01b9546cf2018-11-20 15:21:28 +000066{
Sadik Armagan1625efc2021-06-10 18:24:34 +010067 ConcatDim1EndToEnd<armnn::DataType::QAsymmU8>(clDefaultBackends);
narpra01b9546cf2018-11-20 15:21:28 +000068}
69
Sadik Armagan1625efc2021-06-10 18:24:34 +010070TEST_CASE("ClConcatEndToEndDim3Test")
narpra01b9546cf2018-11-20 15:21:28 +000071{
Sadik Armagan1625efc2021-06-10 18:24:34 +010072 ConcatDim3EndToEnd<armnn::DataType::Float32>(clDefaultBackends);
narpra01b9546cf2018-11-20 15:21:28 +000073}
74
Sadik Armagan1625efc2021-06-10 18:24:34 +010075TEST_CASE("ClConcatEndToEndDim3Uint8Test")
narpra01b9546cf2018-11-20 15:21:28 +000076{
Sadik Armagan1625efc2021-06-10 18:24:34 +010077 ConcatDim3EndToEnd<armnn::DataType::QAsymmU8>(clDefaultBackends);
Aron Virginas-Tar70104002018-10-24 15:33:28 +010078}
79
Aron Virginas-Tarf97f6da2019-10-01 18:35:44 +010080// DepthToSpace
Sadik Armagan1625efc2021-06-10 18:24:34 +010081TEST_CASE("DephtToSpaceEndToEndNchwFloat32")
Aron Virginas-Tarf97f6da2019-10-01 18:35:44 +010082{
Sadik Armagan1625efc2021-06-10 18:24:34 +010083 DepthToSpaceEndToEnd<armnn::DataType::Float32>(clDefaultBackends, armnn::DataLayout::NCHW);
Aron Virginas-Tarf97f6da2019-10-01 18:35:44 +010084}
85
Sadik Armagan1625efc2021-06-10 18:24:34 +010086TEST_CASE("DephtToSpaceEndToEndNchwFloat16")
Aron Virginas-Tarf97f6da2019-10-01 18:35:44 +010087{
Sadik Armagan1625efc2021-06-10 18:24:34 +010088 DepthToSpaceEndToEnd<armnn::DataType::Float16>(clDefaultBackends, armnn::DataLayout::NCHW);
Aron Virginas-Tarf97f6da2019-10-01 18:35:44 +010089}
90
Sadik Armagan1625efc2021-06-10 18:24:34 +010091TEST_CASE("DephtToSpaceEndToEndNchwUint8")
Aron Virginas-Tarf97f6da2019-10-01 18:35:44 +010092{
Sadik Armagan1625efc2021-06-10 18:24:34 +010093 DepthToSpaceEndToEnd<armnn::DataType::QAsymmU8>(clDefaultBackends, armnn::DataLayout::NCHW);
Aron Virginas-Tarf97f6da2019-10-01 18:35:44 +010094}
95
Sadik Armagan1625efc2021-06-10 18:24:34 +010096TEST_CASE("DephtToSpaceEndToEndNchwInt16")
Aron Virginas-Tarf97f6da2019-10-01 18:35:44 +010097{
Sadik Armagan1625efc2021-06-10 18:24:34 +010098 DepthToSpaceEndToEnd<armnn::DataType::QSymmS16>(clDefaultBackends, armnn::DataLayout::NCHW);
Aron Virginas-Tarf97f6da2019-10-01 18:35:44 +010099}
100
Sadik Armagan1625efc2021-06-10 18:24:34 +0100101TEST_CASE("DephtToSpaceEndToEndNhwcFloat32")
Aron Virginas-Tarf97f6da2019-10-01 18:35:44 +0100102{
Sadik Armagan1625efc2021-06-10 18:24:34 +0100103 DepthToSpaceEndToEnd<armnn::DataType::Float32>(clDefaultBackends, armnn::DataLayout::NHWC);
Aron Virginas-Tarf97f6da2019-10-01 18:35:44 +0100104}
105
Sadik Armagan1625efc2021-06-10 18:24:34 +0100106TEST_CASE("DephtToSpaceEndToEndNhwcFloat16")
Aron Virginas-Tarf97f6da2019-10-01 18:35:44 +0100107{
Sadik Armagan1625efc2021-06-10 18:24:34 +0100108 DepthToSpaceEndToEnd<armnn::DataType::Float16>(clDefaultBackends, armnn::DataLayout::NHWC);
Aron Virginas-Tarf97f6da2019-10-01 18:35:44 +0100109}
110
Sadik Armagan1625efc2021-06-10 18:24:34 +0100111TEST_CASE("DephtToSpaceEndToEndNhwcUint8")
Aron Virginas-Tarf97f6da2019-10-01 18:35:44 +0100112{
Sadik Armagan1625efc2021-06-10 18:24:34 +0100113 DepthToSpaceEndToEnd<armnn::DataType::QAsymmU8>(clDefaultBackends, armnn::DataLayout::NHWC);
Aron Virginas-Tarf97f6da2019-10-01 18:35:44 +0100114}
115
Sadik Armagan1625efc2021-06-10 18:24:34 +0100116TEST_CASE("DephtToSpaceEndToEndNhwcInt16")
Aron Virginas-Tarf97f6da2019-10-01 18:35:44 +0100117{
Sadik Armagan1625efc2021-06-10 18:24:34 +0100118 DepthToSpaceEndToEnd<armnn::DataType::QSymmS16>(clDefaultBackends, armnn::DataLayout::NHWC);
Aron Virginas-Tarf97f6da2019-10-01 18:35:44 +0100119}
120
121// Dequantize
Sadik Armagan1625efc2021-06-10 18:24:34 +0100122TEST_CASE("DequantizeEndToEndSimpleTest")
Narumol Prangnawarat8c7324d2019-05-31 16:42:11 +0100123{
Sadik Armagan1625efc2021-06-10 18:24:34 +0100124 DequantizeEndToEndSimple<armnn::DataType::QAsymmU8>(clDefaultBackends);
Narumol Prangnawarat8c7324d2019-05-31 16:42:11 +0100125}
126
Sadik Armagan1625efc2021-06-10 18:24:34 +0100127TEST_CASE("DequantizeEndToEndOffsetTest")
Narumol Prangnawarat8c7324d2019-05-31 16:42:11 +0100128{
Sadik Armagan1625efc2021-06-10 18:24:34 +0100129 DequantizeEndToEndOffset<armnn::DataType::QAsymmU8>(clDefaultBackends);
Narumol Prangnawarat8c7324d2019-05-31 16:42:11 +0100130}
131
Sadik Armagan1625efc2021-06-10 18:24:34 +0100132TEST_CASE("ClStridedSliceInvalidSliceEndToEndTest")
David Monahan0a99a142020-03-13 07:52:54 +0000133{
Sadik Armagan1625efc2021-06-10 18:24:34 +0100134 StridedSliceInvalidSliceEndToEndTest(clDefaultBackends);
David Monahan0a99a142020-03-13 07:52:54 +0000135}
136
Sadik Armagan1625efc2021-06-10 18:24:34 +0100137TEST_CASE("ClEluEndToEndTestFloat32")
Jan Eilersbca73e12020-03-11 12:52:46 +0000138{
Sadik Armagan1625efc2021-06-10 18:24:34 +0100139 EluEndToEndTest<armnn::DataType::Float32>(clDefaultBackends);
Jan Eilersbca73e12020-03-11 12:52:46 +0000140}
141
Sadik Armagan1625efc2021-06-10 18:24:34 +0100142TEST_CASE("ClEluEndToEndTestFloat16")
Jan Eilersbca73e12020-03-11 12:52:46 +0000143{
Sadik Armagan1625efc2021-06-10 18:24:34 +0100144 EluEndToEndTest<armnn::DataType::Float16>(clDefaultBackends);
Jan Eilersbca73e12020-03-11 12:52:46 +0000145}
146
Sadik Armagan1625efc2021-06-10 18:24:34 +0100147TEST_CASE("ClGreaterSimpleEndToEndTest")
Nattapat Chaimanowongc6a41ff2019-01-29 09:56:02 +0000148{
149 const std::vector<uint8_t> expectedOutput({ 0, 0, 0, 0, 1, 1, 1, 1,
150 0, 0, 0, 0, 0, 0, 0, 0 });
151
Sadik Armagan1625efc2021-06-10 18:24:34 +0100152 ComparisonSimpleEndToEnd<armnn::DataType::Float32>(clDefaultBackends,
Aron Virginas-Tar77bfb5e2019-10-16 17:45:38 +0100153 ComparisonOperation::Greater,
154 expectedOutput);
Nattapat Chaimanowongc6a41ff2019-01-29 09:56:02 +0000155}
156
Sadik Armagan1625efc2021-06-10 18:24:34 +0100157TEST_CASE("ClGreaterSimpleEndToEndUint8Test")
Nattapat Chaimanowongc6a41ff2019-01-29 09:56:02 +0000158{
159 const std::vector<uint8_t> expectedOutput({ 0, 0, 0, 0, 1, 1, 1, 1,
160 0, 0, 0, 0, 0, 0, 0, 0 });
161
Sadik Armagan1625efc2021-06-10 18:24:34 +0100162 ComparisonSimpleEndToEnd<armnn::DataType::QAsymmU8>(clDefaultBackends,
Aron Virginas-Tar77bfb5e2019-10-16 17:45:38 +0100163 ComparisonOperation::Greater,
164 expectedOutput);
Nattapat Chaimanowongc6a41ff2019-01-29 09:56:02 +0000165}
166
Sadik Armagan1625efc2021-06-10 18:24:34 +0100167TEST_CASE("ClGreaterBroadcastEndToEndTest")
Nattapat Chaimanowongc6a41ff2019-01-29 09:56:02 +0000168{
169 const std::vector<uint8_t> expectedOutput({ 0, 1, 0, 0, 0, 1,
170 1, 1, 1, 1, 1, 1 });
171
Sadik Armagan1625efc2021-06-10 18:24:34 +0100172 ComparisonBroadcastEndToEnd<armnn::DataType::Float32>(clDefaultBackends,
Aron Virginas-Tar77bfb5e2019-10-16 17:45:38 +0100173 ComparisonOperation::Greater,
174 expectedOutput);
Nattapat Chaimanowongc6a41ff2019-01-29 09:56:02 +0000175}
176
Sadik Armagan1625efc2021-06-10 18:24:34 +0100177TEST_CASE("ClGreaterBroadcastEndToEndUint8Test")
Nattapat Chaimanowongc6a41ff2019-01-29 09:56:02 +0000178{
179 const std::vector<uint8_t> expectedOutput({ 0, 1, 0, 0, 0, 1,
180 1, 1, 1, 1, 1, 1 });
181
Sadik Armagan1625efc2021-06-10 18:24:34 +0100182 ComparisonBroadcastEndToEnd<armnn::DataType::QAsymmU8>(clDefaultBackends,
Aron Virginas-Tar77bfb5e2019-10-16 17:45:38 +0100183 ComparisonOperation::Greater,
184 expectedOutput);
Nattapat Chaimanowongc6a41ff2019-01-29 09:56:02 +0000185}
186
Jan Eilersa83af7b2020-03-18 15:58:11 +0000187// HardSwish
Sadik Armagan1625efc2021-06-10 18:24:34 +0100188TEST_CASE("ClHardSwishEndToEndTestFloat32")
Jan Eilersa83af7b2020-03-18 15:58:11 +0000189{
Sadik Armagan1625efc2021-06-10 18:24:34 +0100190 HardSwishEndToEndTest<armnn::DataType::Float32>(clDefaultBackends);
Jan Eilersa83af7b2020-03-18 15:58:11 +0000191}
192
Sadik Armagan1625efc2021-06-10 18:24:34 +0100193TEST_CASE("ClHardSwishEndToEndTestFloat16")
Jan Eilersa83af7b2020-03-18 15:58:11 +0000194{
Sadik Armagan1625efc2021-06-10 18:24:34 +0100195 HardSwishEndToEndTest<armnn::DataType::Float16>(clDefaultBackends);
Jan Eilersa83af7b2020-03-18 15:58:11 +0000196}
197
Sadik Armagan1625efc2021-06-10 18:24:34 +0100198TEST_CASE("ClHardSwishEndToEndTestQAsymmS8")
Jan Eilersa83af7b2020-03-18 15:58:11 +0000199{
Sadik Armagan1625efc2021-06-10 18:24:34 +0100200 HardSwishEndToEndTest<armnn::DataType::QAsymmS8>(clDefaultBackends);
Jan Eilersa83af7b2020-03-18 15:58:11 +0000201}
202
Sadik Armagan1625efc2021-06-10 18:24:34 +0100203TEST_CASE("ClHardSwishEndToEndTestQAsymmU8")
Jan Eilersa83af7b2020-03-18 15:58:11 +0000204{
Sadik Armagan1625efc2021-06-10 18:24:34 +0100205 HardSwishEndToEndTest<armnn::DataType::QAsymmU8>(clDefaultBackends);
Jan Eilersa83af7b2020-03-18 15:58:11 +0000206}
207
Sadik Armagan1625efc2021-06-10 18:24:34 +0100208TEST_CASE("ClHardSwishEndToEndTestQSymmS16")
Jan Eilersa83af7b2020-03-18 15:58:11 +0000209{
Sadik Armagan1625efc2021-06-10 18:24:34 +0100210 HardSwishEndToEndTest<armnn::DataType::QSymmS16>(clDefaultBackends);
Jan Eilersa83af7b2020-03-18 15:58:11 +0000211}
212
Sadik Armagan062e0e92019-10-14 10:31:43 +0100213// InstanceNormalization
Sadik Armagan1625efc2021-06-10 18:24:34 +0100214TEST_CASE("ClInstanceNormalizationNhwcEndToEndTest1")
Sadik Armagan062e0e92019-10-14 10:31:43 +0100215{
Sadik Armagan1625efc2021-06-10 18:24:34 +0100216 InstanceNormalizationNhwcEndToEndTest1(clDefaultBackends);
Sadik Armagan062e0e92019-10-14 10:31:43 +0100217}
218
Sadik Armagan1625efc2021-06-10 18:24:34 +0100219TEST_CASE("ClInstanceNormalizationNchwEndToEndTest1")
Sadik Armagan062e0e92019-10-14 10:31:43 +0100220{
Sadik Armagan1625efc2021-06-10 18:24:34 +0100221 InstanceNormalizationNchwEndToEndTest1(clDefaultBackends);
Sadik Armagan062e0e92019-10-14 10:31:43 +0100222}
223
Sadik Armagan1625efc2021-06-10 18:24:34 +0100224TEST_CASE("ClInstanceNormalizationNhwcEndToEndTest2")
Sadik Armagan062e0e92019-10-14 10:31:43 +0100225{
Sadik Armagan1625efc2021-06-10 18:24:34 +0100226 InstanceNormalizationNhwcEndToEndTest2(clDefaultBackends);
Sadik Armagan062e0e92019-10-14 10:31:43 +0100227}
228
Sadik Armagan1625efc2021-06-10 18:24:34 +0100229TEST_CASE("ClInstanceNormalizationNchwEndToEndTest2")
Sadik Armagan062e0e92019-10-14 10:31:43 +0100230{
Sadik Armagan1625efc2021-06-10 18:24:34 +0100231 InstanceNormalizationNchwEndToEndTest2(clDefaultBackends);
Sadik Armagan062e0e92019-10-14 10:31:43 +0100232}
233
Teresa Charlin44088502020-07-27 11:27:19 +0100234// Fill
Sadik Armagan1625efc2021-06-10 18:24:34 +0100235TEST_CASE("ClFillEndToEndTest")
Teresa Charlin44088502020-07-27 11:27:19 +0100236{
Sadik Armagan1625efc2021-06-10 18:24:34 +0100237 FillEndToEnd<armnn::DataType::Float32>(clDefaultBackends);
Teresa Charlin44088502020-07-27 11:27:19 +0100238}
239
Sadik Armagan1625efc2021-06-10 18:24:34 +0100240TEST_CASE("RefFillEndToEndTestFloat16")
Teresa Charlin4b10fef2020-07-29 09:36:41 +0100241{
Sadik Armagan1625efc2021-06-10 18:24:34 +0100242 FillEndToEnd<armnn::DataType::Float16>(clDefaultBackends);
Teresa Charlin4b10fef2020-07-29 09:36:41 +0100243}
244
Sadik Armagan1625efc2021-06-10 18:24:34 +0100245TEST_CASE("ClFillEndToEndTestInt32")
Teresa Charlin44088502020-07-27 11:27:19 +0100246{
Sadik Armagan1625efc2021-06-10 18:24:34 +0100247 FillEndToEnd<armnn::DataType::Signed32>(clDefaultBackends);
Teresa Charlin44088502020-07-27 11:27:19 +0100248}
249
250// Prelu
Sadik Armagan1625efc2021-06-10 18:24:34 +0100251TEST_CASE("ClPreluEndToEndFloat32Test")
Nikhil Raj2ec73ac2019-07-22 10:13:22 +0100252{
Sadik Armagan1625efc2021-06-10 18:24:34 +0100253 PreluEndToEndNegativeTest<armnn::DataType::Float32>(clDefaultBackends);
Nikhil Raj2ec73ac2019-07-22 10:13:22 +0100254}
255
Sadik Armagan1625efc2021-06-10 18:24:34 +0100256TEST_CASE("ClPreluEndToEndTestUint8")
Nikhil Raj2ec73ac2019-07-22 10:13:22 +0100257{
Sadik Armagan1625efc2021-06-10 18:24:34 +0100258 PreluEndToEndPositiveTest<armnn::DataType::QAsymmU8>(clDefaultBackends);
Nikhil Raj2ec73ac2019-07-22 10:13:22 +0100259}
260
Sadik Armagan1625efc2021-06-10 18:24:34 +0100261TEST_CASE("ClSpaceToDepthNhwcEndToEndTest1")
James Conroy60597842019-07-02 10:57:56 +0100262{
Sadik Armagan1625efc2021-06-10 18:24:34 +0100263 SpaceToDepthNhwcEndToEndTest1(clDefaultBackends);
James Conroy60597842019-07-02 10:57:56 +0100264}
265
Sadik Armagan1625efc2021-06-10 18:24:34 +0100266TEST_CASE("ClSpaceToDepthNchwEndToEndTest1")
James Conroy60597842019-07-02 10:57:56 +0100267{
Sadik Armagan1625efc2021-06-10 18:24:34 +0100268 SpaceToDepthNchwEndToEndTest1(clDefaultBackends);
James Conroy60597842019-07-02 10:57:56 +0100269}
270
Sadik Armagan1625efc2021-06-10 18:24:34 +0100271TEST_CASE("ClSpaceToDepthNhwcEndToEndTest2")
James Conroy60597842019-07-02 10:57:56 +0100272{
Sadik Armagan1625efc2021-06-10 18:24:34 +0100273 SpaceToDepthNhwcEndToEndTest2(clDefaultBackends);
James Conroy60597842019-07-02 10:57:56 +0100274}
275
Sadik Armagan1625efc2021-06-10 18:24:34 +0100276TEST_CASE("ClSpaceToDepthNchwEndToEndTest2")
James Conroy60597842019-07-02 10:57:56 +0100277{
Sadik Armagan1625efc2021-06-10 18:24:34 +0100278 SpaceToDepthNchwEndToEndTest2(clDefaultBackends);
James Conroy60597842019-07-02 10:57:56 +0100279}
280
Sadik Armagan1625efc2021-06-10 18:24:34 +0100281TEST_CASE("ClSplitter1dEndToEndTest")
Narumol Prangnawarat0be43382019-05-27 11:29:59 +0100282{
Sadik Armagan1625efc2021-06-10 18:24:34 +0100283 Splitter1dEndToEnd<armnn::DataType::Float32>(clDefaultBackends);
Narumol Prangnawarat0be43382019-05-27 11:29:59 +0100284}
285
Sadik Armagan1625efc2021-06-10 18:24:34 +0100286TEST_CASE("ClSplitter1dEndToEndUint8Test")
Narumol Prangnawarat0be43382019-05-27 11:29:59 +0100287{
Sadik Armagan1625efc2021-06-10 18:24:34 +0100288 Splitter1dEndToEnd<armnn::DataType::QAsymmU8>(clDefaultBackends);
Narumol Prangnawarat0be43382019-05-27 11:29:59 +0100289}
290
Sadik Armagan1625efc2021-06-10 18:24:34 +0100291TEST_CASE("ClSplitter2dDim0EndToEndTest")
Narumol Prangnawarat0be43382019-05-27 11:29:59 +0100292{
Sadik Armagan1625efc2021-06-10 18:24:34 +0100293 Splitter2dDim0EndToEnd<armnn::DataType::Float32>(clDefaultBackends);
Narumol Prangnawarat0be43382019-05-27 11:29:59 +0100294}
295
Sadik Armagan1625efc2021-06-10 18:24:34 +0100296TEST_CASE("ClSplitter2dDim1EndToEndTest")
Narumol Prangnawarat0be43382019-05-27 11:29:59 +0100297{
Sadik Armagan1625efc2021-06-10 18:24:34 +0100298 Splitter2dDim1EndToEnd<armnn::DataType::Float32>(clDefaultBackends);
Narumol Prangnawarat0be43382019-05-27 11:29:59 +0100299}
300
Sadik Armagan1625efc2021-06-10 18:24:34 +0100301TEST_CASE("ClSplitter2dDim0EndToEndUint8Test")
Narumol Prangnawarat0be43382019-05-27 11:29:59 +0100302{
Sadik Armagan1625efc2021-06-10 18:24:34 +0100303 Splitter2dDim0EndToEnd<armnn::DataType::QAsymmU8>(clDefaultBackends);
Narumol Prangnawarat0be43382019-05-27 11:29:59 +0100304}
305
Sadik Armagan1625efc2021-06-10 18:24:34 +0100306TEST_CASE("ClSplitter2dDim1EndToEndUint8Test")
Narumol Prangnawarat0be43382019-05-27 11:29:59 +0100307{
Sadik Armagan1625efc2021-06-10 18:24:34 +0100308 Splitter2dDim1EndToEnd<armnn::DataType::QAsymmU8>(clDefaultBackends);
Narumol Prangnawarat0be43382019-05-27 11:29:59 +0100309}
310
Sadik Armagan1625efc2021-06-10 18:24:34 +0100311TEST_CASE("ClSplitter3dDim0EndToEndTest")
Narumol Prangnawarat0be43382019-05-27 11:29:59 +0100312{
Sadik Armagan1625efc2021-06-10 18:24:34 +0100313 Splitter3dDim0EndToEnd<armnn::DataType::Float32>(clDefaultBackends);
Narumol Prangnawarat0be43382019-05-27 11:29:59 +0100314}
315
Sadik Armagan1625efc2021-06-10 18:24:34 +0100316TEST_CASE("ClSplitter3dDim1EndToEndTest")
Narumol Prangnawarat0be43382019-05-27 11:29:59 +0100317{
Sadik Armagan1625efc2021-06-10 18:24:34 +0100318 Splitter3dDim1EndToEnd<armnn::DataType::Float32>(clDefaultBackends);
Narumol Prangnawarat0be43382019-05-27 11:29:59 +0100319}
320
Sadik Armagan1625efc2021-06-10 18:24:34 +0100321TEST_CASE("ClSplitter3dDim2EndToEndTest")
Narumol Prangnawarat0f072ab2019-05-29 14:12:46 +0100322{
Sadik Armagan1625efc2021-06-10 18:24:34 +0100323 Splitter3dDim2EndToEnd<armnn::DataType::Float32>(clDefaultBackends);
Narumol Prangnawarat0f072ab2019-05-29 14:12:46 +0100324}
325
Sadik Armagan1625efc2021-06-10 18:24:34 +0100326TEST_CASE("ClSplitter3dDim0EndToEndUint8Test")
Narumol Prangnawarat0f072ab2019-05-29 14:12:46 +0100327{
Sadik Armagan1625efc2021-06-10 18:24:34 +0100328 Splitter3dDim0EndToEnd<armnn::DataType::QAsymmU8>(clDefaultBackends);
Narumol Prangnawarat0f072ab2019-05-29 14:12:46 +0100329}
330
Sadik Armagan1625efc2021-06-10 18:24:34 +0100331TEST_CASE("ClSplitter3dDim1EndToEndUint8Test")
Narumol Prangnawarat0f072ab2019-05-29 14:12:46 +0100332{
Sadik Armagan1625efc2021-06-10 18:24:34 +0100333 Splitter3dDim1EndToEnd<armnn::DataType::QAsymmU8>(clDefaultBackends);
Narumol Prangnawarat0f072ab2019-05-29 14:12:46 +0100334}
335
Sadik Armagan1625efc2021-06-10 18:24:34 +0100336TEST_CASE("ClSplitter3dDim2EndToEndUint8Test")
Narumol Prangnawarat0f072ab2019-05-29 14:12:46 +0100337{
Sadik Armagan1625efc2021-06-10 18:24:34 +0100338 Splitter3dDim2EndToEnd<armnn::DataType::QAsymmU8>(clDefaultBackends);
Narumol Prangnawarat0f072ab2019-05-29 14:12:46 +0100339}
340
Sadik Armagan1625efc2021-06-10 18:24:34 +0100341TEST_CASE("ClSplitter4dDim0EndToEndTest")
Narumol Prangnawarat0f072ab2019-05-29 14:12:46 +0100342{
Sadik Armagan1625efc2021-06-10 18:24:34 +0100343 Splitter4dDim0EndToEnd<armnn::DataType::Float32>(clDefaultBackends);
Narumol Prangnawarat0f072ab2019-05-29 14:12:46 +0100344}
345
Sadik Armagan1625efc2021-06-10 18:24:34 +0100346TEST_CASE("ClSplitter4dDim1EndToEndTest")
Narumol Prangnawarat0f072ab2019-05-29 14:12:46 +0100347{
Sadik Armagan1625efc2021-06-10 18:24:34 +0100348 Splitter4dDim1EndToEnd<armnn::DataType::Float32>(clDefaultBackends);
Narumol Prangnawarat0f072ab2019-05-29 14:12:46 +0100349}
350
Sadik Armagan1625efc2021-06-10 18:24:34 +0100351TEST_CASE("ClSplitter4dDim2EndToEndTest")
Narumol Prangnawarat0f072ab2019-05-29 14:12:46 +0100352{
Sadik Armagan1625efc2021-06-10 18:24:34 +0100353 Splitter4dDim2EndToEnd<armnn::DataType::Float32>(clDefaultBackends);
Narumol Prangnawarat0f072ab2019-05-29 14:12:46 +0100354}
355
Sadik Armagan1625efc2021-06-10 18:24:34 +0100356TEST_CASE("ClSplitter4dDim3EndToEndTest")
Narumol Prangnawarat0f072ab2019-05-29 14:12:46 +0100357{
Sadik Armagan1625efc2021-06-10 18:24:34 +0100358 Splitter4dDim3EndToEnd<armnn::DataType::Float32>(clDefaultBackends);
Narumol Prangnawarat0f072ab2019-05-29 14:12:46 +0100359}
360
Sadik Armagan1625efc2021-06-10 18:24:34 +0100361TEST_CASE("ClSplitter4dDim0EndToEndUint8Test")
Narumol Prangnawarat0f072ab2019-05-29 14:12:46 +0100362{
Sadik Armagan1625efc2021-06-10 18:24:34 +0100363 Splitter4dDim0EndToEnd<armnn::DataType::QAsymmU8>(clDefaultBackends);
Narumol Prangnawarat0f072ab2019-05-29 14:12:46 +0100364}
365
Sadik Armagan1625efc2021-06-10 18:24:34 +0100366TEST_CASE("ClSplitter4dDim1EndToEndUint8Test")
Narumol Prangnawarat0f072ab2019-05-29 14:12:46 +0100367{
Sadik Armagan1625efc2021-06-10 18:24:34 +0100368 Splitter4dDim1EndToEnd<armnn::DataType::QAsymmU8>(clDefaultBackends);
Narumol Prangnawarat0f072ab2019-05-29 14:12:46 +0100369}
370
Sadik Armagan1625efc2021-06-10 18:24:34 +0100371TEST_CASE("ClSplitter4dDim2EndToEndUint8Test")
Narumol Prangnawarat0f072ab2019-05-29 14:12:46 +0100372{
Sadik Armagan1625efc2021-06-10 18:24:34 +0100373 Splitter4dDim2EndToEnd<armnn::DataType::QAsymmU8>(clDefaultBackends);
Narumol Prangnawarat0f072ab2019-05-29 14:12:46 +0100374}
375
Sadik Armagan1625efc2021-06-10 18:24:34 +0100376TEST_CASE("ClSplitter4dDim3EndToEndUint8Test")
Narumol Prangnawarat0f072ab2019-05-29 14:12:46 +0100377{
Sadik Armagan1625efc2021-06-10 18:24:34 +0100378 Splitter4dDim3EndToEnd<armnn::DataType::QAsymmU8>(clDefaultBackends);
Narumol Prangnawarat0f072ab2019-05-29 14:12:46 +0100379}
Nattapat Chaimanowongc6a41ff2019-01-29 09:56:02 +0000380
Aron Virginas-Tar7a3e2fe2019-06-27 18:54:47 +0100381// TransposeConvolution2d
Sadik Armagan1625efc2021-06-10 18:24:34 +0100382TEST_CASE("ClTransposeConvolution2dEndToEndFloatNchwTest")
Aron Virginas-Tar7a3e2fe2019-06-27 18:54:47 +0100383{
384 TransposeConvolution2dEndToEnd<armnn::DataType::Float32, armnn::DataType::Float32>(
Sadik Armagan1625efc2021-06-10 18:24:34 +0100385 clDefaultBackends, armnn::DataLayout::NCHW);
Aron Virginas-Tar7a3e2fe2019-06-27 18:54:47 +0100386}
387
Sadik Armagan1625efc2021-06-10 18:24:34 +0100388TEST_CASE("ClTransposeConvolution2dEndToEndUint8NchwTest")
Aron Virginas-Tar7a3e2fe2019-06-27 18:54:47 +0100389{
Derek Lambertif90c56d2020-01-10 17:14:08 +0000390 TransposeConvolution2dEndToEnd<armnn::DataType::QAsymmU8, armnn::DataType::Signed32>(
Sadik Armagan1625efc2021-06-10 18:24:34 +0100391 clDefaultBackends, armnn::DataLayout::NCHW);
Aron Virginas-Tar7a3e2fe2019-06-27 18:54:47 +0100392}
393
Sadik Armagan1625efc2021-06-10 18:24:34 +0100394TEST_CASE("ClTransposeConvolution2dEndToEndFloatNhwcTest")
Aron Virginas-Tar7a3e2fe2019-06-27 18:54:47 +0100395{
396 TransposeConvolution2dEndToEnd<armnn::DataType::Float32, armnn::DataType::Float32>(
Sadik Armagan1625efc2021-06-10 18:24:34 +0100397 clDefaultBackends, armnn::DataLayout::NHWC);
Aron Virginas-Tar7a3e2fe2019-06-27 18:54:47 +0100398}
399
Sadik Armagan1625efc2021-06-10 18:24:34 +0100400TEST_CASE("ClTransposeConvolution2dEndToEndUint8NhwcTest")
Aron Virginas-Tar7a3e2fe2019-06-27 18:54:47 +0100401{
Derek Lambertif90c56d2020-01-10 17:14:08 +0000402 TransposeConvolution2dEndToEnd<armnn::DataType::QAsymmU8, armnn::DataType::Signed32>(
Sadik Armagan1625efc2021-06-10 18:24:34 +0100403 clDefaultBackends, armnn::DataLayout::NHWC);
Aron Virginas-Tar7a3e2fe2019-06-27 18:54:47 +0100404}
405
Sadik Armagan1625efc2021-06-10 18:24:34 +0100406TEST_CASE("ClQuantizedLstmEndToEndTest")
Francis Murtaghb3fc2522019-08-09 13:20:50 +0100407{
Sadik Armagan1625efc2021-06-10 18:24:34 +0100408 QuantizedLstmEndToEnd(clDefaultBackends);
Francis Murtaghb3fc2522019-08-09 13:20:50 +0100409}
410
James Conroy68a4dbc2019-11-13 15:35:59 +0000411// ArgMinMax
Sadik Armagan1625efc2021-06-10 18:24:34 +0100412TEST_CASE("ClArgMaxSimpleTest")
James Conroy68a4dbc2019-11-13 15:35:59 +0000413{
Sadik Armagan1625efc2021-06-10 18:24:34 +0100414 ArgMaxEndToEndSimple<armnn::DataType::Float32>(clDefaultBackends);
James Conroy68a4dbc2019-11-13 15:35:59 +0000415}
416
Sadik Armagan1625efc2021-06-10 18:24:34 +0100417TEST_CASE("ClArgMinSimpleTest")
James Conroy68a4dbc2019-11-13 15:35:59 +0000418{
Sadik Armagan1625efc2021-06-10 18:24:34 +0100419 ArgMinEndToEndSimple<armnn::DataType::Float32>(clDefaultBackends);
James Conroy68a4dbc2019-11-13 15:35:59 +0000420}
421
Sadik Armagan1625efc2021-06-10 18:24:34 +0100422TEST_CASE("ClArgMaxAxis0Test")
James Conroy68a4dbc2019-11-13 15:35:59 +0000423{
Sadik Armagan1625efc2021-06-10 18:24:34 +0100424 ArgMaxAxis0EndToEnd<armnn::DataType::Float32>(clDefaultBackends);
James Conroy68a4dbc2019-11-13 15:35:59 +0000425}
426
Sadik Armagan1625efc2021-06-10 18:24:34 +0100427TEST_CASE("ClArgMinAxis0Test")
James Conroy68a4dbc2019-11-13 15:35:59 +0000428{
Sadik Armagan1625efc2021-06-10 18:24:34 +0100429 ArgMinAxis0EndToEnd<armnn::DataType::Float32>(clDefaultBackends);
James Conroy68a4dbc2019-11-13 15:35:59 +0000430}
431
Sadik Armagan1625efc2021-06-10 18:24:34 +0100432TEST_CASE("ClArgMaxAxis1Test")
James Conroy68a4dbc2019-11-13 15:35:59 +0000433{
Sadik Armagan1625efc2021-06-10 18:24:34 +0100434 ArgMaxAxis1EndToEnd<armnn::DataType::Float32>(clDefaultBackends);
James Conroy68a4dbc2019-11-13 15:35:59 +0000435}
436
Sadik Armagan1625efc2021-06-10 18:24:34 +0100437TEST_CASE("ClArgMinAxis1Test")
James Conroy68a4dbc2019-11-13 15:35:59 +0000438{
Sadik Armagan1625efc2021-06-10 18:24:34 +0100439 ArgMinAxis1EndToEnd<armnn::DataType::Float32>(clDefaultBackends);
James Conroy68a4dbc2019-11-13 15:35:59 +0000440}
441
Sadik Armagan1625efc2021-06-10 18:24:34 +0100442TEST_CASE("ClArgMaxAxis2Test")
James Conroy68a4dbc2019-11-13 15:35:59 +0000443{
Sadik Armagan1625efc2021-06-10 18:24:34 +0100444 ArgMaxAxis2EndToEnd<armnn::DataType::Float32>(clDefaultBackends);
James Conroy68a4dbc2019-11-13 15:35:59 +0000445}
446
Sadik Armagan1625efc2021-06-10 18:24:34 +0100447TEST_CASE("ClArgMinAxis2Test")
James Conroy68a4dbc2019-11-13 15:35:59 +0000448{
Sadik Armagan1625efc2021-06-10 18:24:34 +0100449 ArgMinAxis2EndToEnd<armnn::DataType::Float32>(clDefaultBackends);
James Conroy68a4dbc2019-11-13 15:35:59 +0000450}
451
Sadik Armagan1625efc2021-06-10 18:24:34 +0100452TEST_CASE("ClArgMaxAxis3Test")
James Conroy68a4dbc2019-11-13 15:35:59 +0000453{
Sadik Armagan1625efc2021-06-10 18:24:34 +0100454 ArgMaxAxis3EndToEnd<armnn::DataType::Float32>(clDefaultBackends);
James Conroy68a4dbc2019-11-13 15:35:59 +0000455}
456
Sadik Armagan1625efc2021-06-10 18:24:34 +0100457TEST_CASE("ClArgMinAxis3Test")
James Conroy68a4dbc2019-11-13 15:35:59 +0000458{
Sadik Armagan1625efc2021-06-10 18:24:34 +0100459 ArgMinAxis3EndToEnd<armnn::DataType::Float32>(clDefaultBackends);
James Conroy68a4dbc2019-11-13 15:35:59 +0000460}
461
Sadik Armagan1625efc2021-06-10 18:24:34 +0100462TEST_CASE("ClArgMaxSimpleTestQAsymmU8")
Ryan OShea1426a3f2020-01-23 11:56:05 +0000463{
Sadik Armagan1625efc2021-06-10 18:24:34 +0100464 ArgMaxEndToEndSimple<armnn::DataType::QAsymmU8>(clDefaultBackends);
Ryan OShea1426a3f2020-01-23 11:56:05 +0000465}
466
Sadik Armagan1625efc2021-06-10 18:24:34 +0100467TEST_CASE("ClArgMinSimpleTestQAsymmU8")
Ryan OShea1426a3f2020-01-23 11:56:05 +0000468{
Sadik Armagan1625efc2021-06-10 18:24:34 +0100469 ArgMinEndToEndSimple<armnn::DataType::QAsymmU8>(clDefaultBackends);
Ryan OShea1426a3f2020-01-23 11:56:05 +0000470}
471
Sadik Armagan1625efc2021-06-10 18:24:34 +0100472TEST_CASE("ClArgMaxAxis0TestQAsymmU8")
Ryan OShea1426a3f2020-01-23 11:56:05 +0000473{
Sadik Armagan1625efc2021-06-10 18:24:34 +0100474 ArgMaxAxis0EndToEnd<armnn::DataType::QAsymmU8>(clDefaultBackends);
Ryan OShea1426a3f2020-01-23 11:56:05 +0000475}
476
Sadik Armagan1625efc2021-06-10 18:24:34 +0100477TEST_CASE("ClArgMinAxis0TestQAsymmU8")
Ryan OShea1426a3f2020-01-23 11:56:05 +0000478{
Sadik Armagan1625efc2021-06-10 18:24:34 +0100479 ArgMinAxis0EndToEnd<armnn::DataType::QAsymmU8>(clDefaultBackends);
Ryan OShea1426a3f2020-01-23 11:56:05 +0000480}
481
Sadik Armagan1625efc2021-06-10 18:24:34 +0100482TEST_CASE("ClArgMaxAxis1TestQAsymmU8")
Ryan OShea1426a3f2020-01-23 11:56:05 +0000483{
Sadik Armagan1625efc2021-06-10 18:24:34 +0100484 ArgMaxAxis1EndToEnd<armnn::DataType::QAsymmU8>(clDefaultBackends);
Ryan OShea1426a3f2020-01-23 11:56:05 +0000485}
486
Sadik Armagan1625efc2021-06-10 18:24:34 +0100487TEST_CASE("ClArgMinAxis1TestQAsymmU8")
Ryan OShea1426a3f2020-01-23 11:56:05 +0000488{
Sadik Armagan1625efc2021-06-10 18:24:34 +0100489 ArgMinAxis1EndToEnd<armnn::DataType::QAsymmU8>(clDefaultBackends);
Ryan OShea1426a3f2020-01-23 11:56:05 +0000490}
491
Sadik Armagan1625efc2021-06-10 18:24:34 +0100492TEST_CASE("ClArgMaxAxis2TestQAsymmU8")
Ryan OShea1426a3f2020-01-23 11:56:05 +0000493{
Sadik Armagan1625efc2021-06-10 18:24:34 +0100494 ArgMaxAxis2EndToEnd<armnn::DataType::QAsymmU8>(clDefaultBackends);
Ryan OShea1426a3f2020-01-23 11:56:05 +0000495}
496
Sadik Armagan1625efc2021-06-10 18:24:34 +0100497TEST_CASE("ClArgMinAxis2TestQAsymmU8")
Ryan OShea1426a3f2020-01-23 11:56:05 +0000498{
Sadik Armagan1625efc2021-06-10 18:24:34 +0100499 ArgMinAxis2EndToEnd<armnn::DataType::QAsymmU8>(clDefaultBackends);
Ryan OShea1426a3f2020-01-23 11:56:05 +0000500}
501
Sadik Armagan1625efc2021-06-10 18:24:34 +0100502TEST_CASE("ClArgMaxAxis3TestQAsymmU8")
Ryan OShea1426a3f2020-01-23 11:56:05 +0000503{
Sadik Armagan1625efc2021-06-10 18:24:34 +0100504 ArgMaxAxis3EndToEnd<armnn::DataType::QAsymmU8>(clDefaultBackends);
Ryan OShea1426a3f2020-01-23 11:56:05 +0000505}
506
Sadik Armagan1625efc2021-06-10 18:24:34 +0100507TEST_CASE("ClArgMinAxis3TestQAsymmU8")
Ryan OShea1426a3f2020-01-23 11:56:05 +0000508{
Sadik Armagan1625efc2021-06-10 18:24:34 +0100509 ArgMinAxis3EndToEnd<armnn::DataType::QAsymmU8>(clDefaultBackends);
Ryan OShea1426a3f2020-01-23 11:56:05 +0000510}
511
Sadik Armagan1625efc2021-06-10 18:24:34 +0100512TEST_CASE("ClQLstmEndToEndTest")
James Conroy0800bf52020-05-14 12:46:44 +0100513{
Sadik Armagan1625efc2021-06-10 18:24:34 +0100514 QLstmEndToEnd(clDefaultBackends);
James Conroy0800bf52020-05-14 12:46:44 +0100515}
516
David Monahan646bc8a2022-01-31 14:29:14 +0000517TEST_CASE("ClForceImportWithMisalignedInputBuffersEndToEndTest")
518{
519 ForceImportWithMisalignedInputBuffersEndToEndTest(clDefaultBackends);
520}
521
522TEST_CASE("ClForceImportWithMisalignedOutputBuffersEndToEndTest")
523{
524 ForceImportWithMisalignedOutputBuffersEndToEndTest(clDefaultBackends);
525}
526
527TEST_CASE("ClForceImportWithMisalignedInputAndOutputBuffersEndToEndTest")
528{
529 ForceImportWithMisalignedInputAndOutputBuffersEndToEndTest(clDefaultBackends);
530}
531
Sadik Armagan1625efc2021-06-10 18:24:34 +0100532}