blob: 2e5e2444253c732a50c3c7af65e8a8562adb5d1a [file] [log] [blame]
Aron Virginas-Tar00d306e2019-08-28 18:08:46 +01001//
2// Copyright © 2017 Arm Ltd. All rights reserved.
3// SPDX-License-Identifier: MIT
4//
5
6#pragma once
7
8#include "LayerTestResult.hpp"
9
Matthew Jackson9bff1442019-09-12 09:08:23 +010010#include <Half.hpp>
11
Aron Virginas-Tar00d306e2019-08-28 18:08:46 +010012#include <backendsCommon/IBackendInternal.hpp>
13#include <backendsCommon/WorkloadFactory.hpp>
14
15LayerTestResult<float, 2> SimpleSoftmaxTest(
16 armnn::IWorkloadFactory& workloadFactory,
17 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
18 float beta);
19
20LayerTestResult<float, 2> SimpleAxisSoftmaxTest(
21 armnn::IWorkloadFactory& workloadFactory,
22 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
23 float beta,
24 int axis);
25
26LayerTestResult<float, 3> Simple3dSoftmaxTest(
27 armnn::IWorkloadFactory& workloadFactory,
28 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
29 float beta);
30
31LayerTestResult<float, 3> Simple3dAxisSoftmaxTest(
32 armnn::IWorkloadFactory& workloadFactory,
33 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
34 float beta,
35 int axis);
36
37LayerTestResult<float, 4> Simple4dSoftmaxTest(
38 armnn::IWorkloadFactory& workloadFactory,
39 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
40 float beta);
41
42LayerTestResult<float, 4> Simple4dAxisSoftmaxTest(
43 armnn::IWorkloadFactory& workloadFactory,
44 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
45 float beta,
46 int axis);
47
48LayerTestResult<uint8_t, 2> SimpleSoftmaxUint8Test(
49 armnn::IWorkloadFactory& workloadFactory,
50 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
51 float beta);
52
53LayerTestResult<uint8_t,3> Simple3dSoftmaxUint8Test(
54 armnn::IWorkloadFactory& workloadFactory,
55 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
56 float beta);
57
58LayerTestResult<uint8_t,4> Simple4dSoftmaxUint8Test(
59 armnn::IWorkloadFactory& workloadFactory,
60 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
61 float beta);
62
Matthew Jackson9bff1442019-09-12 09:08:23 +010063LayerTestResult<armnn::Half,2> SimpleSoftmaxFloat16Test(
64 armnn::IWorkloadFactory& workloadFactory,
65 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
66 float beta);
67
68LayerTestResult<armnn::Half,3> Simple3dSoftmaxFloat16Test(
69 armnn::IWorkloadFactory& workloadFactory,
70 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
71 float beta);
72
73LayerTestResult<armnn::Half,4> Simple4dSoftmaxFloat16Test(
74 armnn::IWorkloadFactory& workloadFactory,
75 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
76 float beta);
77
Aron Virginas-Tar00d306e2019-08-28 18:08:46 +010078LayerTestResult<int16_t,2> SimpleSoftmaxUint16Test(
79 armnn::IWorkloadFactory& workloadFactory,
80 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
81 float beta);
82
83LayerTestResult<int16_t,3> Simple3dSoftmaxUint16Test(
84 armnn::IWorkloadFactory& workloadFactory,
85 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
86 float beta);
87
88LayerTestResult<int16_t,4> Simple4dSoftmaxUint16Test(
89 armnn::IWorkloadFactory& workloadFactory,
90 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
91 float beta);
92
93LayerTestResult<float, 2> CompareSoftmaxTest(
94 armnn::IWorkloadFactory& workloadFactory,
95 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
96 armnn::IWorkloadFactory& refWorkloadFactory,
97 float beta);
98
99LayerTestResult<uint8_t, 2> CompareSoftmaxUint8Test(
100 armnn::IWorkloadFactory& workloadFactory,
101 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
102 armnn::IWorkloadFactory& refWorkloadFactory,
103 float beta);