blob: 9b0d775376f87081ee9c2c21cf3f08e2c11c1d54 [file] [log] [blame]
Moritz Pflanzer572ade72017-07-21 17:36:33 +01001/*
Murray Kornelsen926f5022022-07-13 21:22:39 -04002 * Copyright (c) 2017-2019, 2022 Arm Limited.
Moritz Pflanzer572ade72017-07-21 17:36:33 +01003 *
4 * SPDX-License-Identifier: MIT
5 *
6 * Permission is hereby granted, free of charge, to any person obtaining a copy
7 * of this software and associated documentation files (the "Software"), to
8 * deal in the Software without restriction, including without limitation the
9 * rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
10 * sell copies of the Software, and to permit persons to whom the Software is
11 * furnished to do so, subject to the following conditions:
12 *
13 * The above copyright notice and this permission notice shall be included in all
14 * copies or substantial portions of the Software.
15 *
16 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
17 * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
18 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
19 * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
20 * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
21 * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
22 * SOFTWARE.
23 */
Michalis Spyrouf4643372019-11-29 16:17:13 +000024#ifndef ARM_COMPUTE_TEST_ACTIVATIONFUNCTIONS_DATASET_H
25#define ARM_COMPUTE_TEST_ACTIVATIONFUNCTIONS_DATASET_H
Moritz Pflanzer572ade72017-07-21 17:36:33 +010026
27#include "arm_compute/core/Types.h"
Moritz Pflanzera09de0c2017-09-01 20:41:12 +010028#include "tests/framework/datasets/ContainerDataset.h"
29
30#include <vector>
Moritz Pflanzer572ade72017-07-21 17:36:33 +010031
32namespace arm_compute
33{
34namespace test
35{
36namespace datasets
37{
38class ActivationFunctions final : public framework::dataset::ContainerDataset<std::vector<ActivationLayerInfo::ActivationFunction>>
39{
40public:
41 ActivationFunctions()
42 : ContainerDataset("ActivationFunction",
43 {
44 ActivationLayerInfo::ActivationFunction::ABS,
45 ActivationLayerInfo::ActivationFunction::LINEAR,
46 ActivationLayerInfo::ActivationFunction::LOGISTIC,
47 ActivationLayerInfo::ActivationFunction::RELU,
48 ActivationLayerInfo::ActivationFunction::BOUNDED_RELU,
Georgios Pinitas64ebe5b2017-09-01 17:44:24 +010049 ActivationLayerInfo::ActivationFunction::LU_BOUNDED_RELU,
Moritz Pflanzer572ade72017-07-21 17:36:33 +010050 ActivationLayerInfo::ActivationFunction::LEAKY_RELU,
51 ActivationLayerInfo::ActivationFunction::SOFT_RELU,
Georgios Pinitasfb0fdcd2019-08-22 17:10:04 +010052 ActivationLayerInfo::ActivationFunction::ELU,
Moritz Pflanzer572ade72017-07-21 17:36:33 +010053 ActivationLayerInfo::ActivationFunction::SQRT,
54 ActivationLayerInfo::ActivationFunction::SQUARE,
Usama Arif80e55db2019-05-14 17:48:47 +010055 ActivationLayerInfo::ActivationFunction::TANH,
Murray Kornelsen926f5022022-07-13 21:22:39 -040056 ActivationLayerInfo::ActivationFunction::IDENTITY,
Pablo Marquez Telloead4d112022-09-21 11:01:50 +010057#ifdef __aarch64__
Murray Kornelsen926f5022022-07-13 21:22:39 -040058 ActivationLayerInfo::ActivationFunction::GELU,
Pablo Marquez Telloead4d112022-09-21 11:01:50 +010059#endif /* __aarch64__ */
Moritz Pflanzer572ade72017-07-21 17:36:33 +010060 })
61 {
62 }
63};
Giorgio Arena73023022018-09-04 14:55:55 +010064
65class ActivationFunctionsQuantized final : public framework::dataset::ContainerDataset<std::vector<ActivationLayerInfo::ActivationFunction>>
66{
67public:
68 ActivationFunctionsQuantized()
69 : ContainerDataset("ActivationFunctionQuantized",
70 {
Georgios Pinitas4b3fba12019-06-04 17:31:46 +010071 ActivationLayerInfo::ActivationFunction::RELU,
72 ActivationLayerInfo::ActivationFunction::BOUNDED_RELU,
73 ActivationLayerInfo::ActivationFunction::LU_BOUNDED_RELU,
Giorgio Arena73023022018-09-04 14:55:55 +010074 ActivationLayerInfo::ActivationFunction::LOGISTIC,
Georgios Pinitas4b3fba12019-06-04 17:31:46 +010075 ActivationLayerInfo::ActivationFunction::TANH,
Giorgio Arena73023022018-09-04 14:55:55 +010076 })
77 {
78 }
79};
Moritz Pflanzer572ade72017-07-21 17:36:33 +010080} // namespace datasets
81} // namespace test
82} // namespace arm_compute
Michalis Spyrouf4643372019-11-29 16:17:13 +000083#endif /* ARM_COMPUTE_TEST_ACTIVATIONFUNCTIONS_DATASET_H */