blob: 75684797c2bd2603222f0e039ce71e40b2563cc4 [file] [log] [blame]
Aron Virginas-Tare89ebad2019-08-27 18:14:26 +01001//
2// Copyright © 2017 Arm Ltd. All rights reserved.
3// SPDX-License-Identifier: MIT
4//
5
6#pragma once
7
Sadik Armagana097d2a2021-11-24 15:47:28 +00008#include <armnnTestUtils/LayerTestResult.hpp>
Aron Virginas-Tare89ebad2019-08-27 18:14:26 +01009
Matteo Martincighe5b8eb92019-11-28 15:45:42 +000010#include <armnn/backends/IBackendInternal.hpp>
Colm Donelan0c479742021-12-10 12:43:54 +000011#include <armnn/backends/WorkloadFactory.hpp>
Aron Virginas-Tare89ebad2019-08-27 18:14:26 +010012
13LayerTestResult<float, 4> AdditionTest(
14 armnn::IWorkloadFactory& workloadFactory,
Keith Davis33a626f2020-08-27 15:38:12 +010015 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
16 const armnn::ITensorHandleFactory& tensorHandleFactory);
Aron Virginas-Tare89ebad2019-08-27 18:14:26 +010017
18LayerTestResult<float, 5> Addition5dTest(
19 armnn::IWorkloadFactory& workloadFactory,
Keith Davis33a626f2020-08-27 15:38:12 +010020 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
21 const armnn::ITensorHandleFactory& tensorHandleFactory);
Aron Virginas-Tare89ebad2019-08-27 18:14:26 +010022
23LayerTestResult<float, 4> AdditionBroadcast1ElementTest(
24 armnn::IWorkloadFactory& workloadFactory,
Keith Davis33a626f2020-08-27 15:38:12 +010025 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
26 const armnn::ITensorHandleFactory& tensorHandleFactory);
Aron Virginas-Tare89ebad2019-08-27 18:14:26 +010027
28LayerTestResult<float, 4> AdditionBroadcastTest(
29 armnn::IWorkloadFactory& workloadFactory,
Keith Davis33a626f2020-08-27 15:38:12 +010030 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
31 const armnn::ITensorHandleFactory& tensorHandleFactory);
Aron Virginas-Tare89ebad2019-08-27 18:14:26 +010032
33LayerTestResult<uint8_t, 4> AdditionUint8Test(
34 armnn::IWorkloadFactory& workloadFactory,
Keith Davis33a626f2020-08-27 15:38:12 +010035 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
36 const armnn::ITensorHandleFactory& tensorHandleFactory);
Aron Virginas-Tare89ebad2019-08-27 18:14:26 +010037
38LayerTestResult<uint8_t, 4> AdditionBroadcast1ElementUint8Test(
39 armnn::IWorkloadFactory& workloadFactory,
Keith Davis33a626f2020-08-27 15:38:12 +010040 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
41 const armnn::ITensorHandleFactory& tensorHandleFactory);
Aron Virginas-Tare89ebad2019-08-27 18:14:26 +010042
43LayerTestResult<uint8_t, 4> AdditionBroadcastUint8Test(
44 armnn::IWorkloadFactory& workloadFactory,
Keith Davis33a626f2020-08-27 15:38:12 +010045 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
46 const armnn::ITensorHandleFactory& tensorHandleFactory);
Aron Virginas-Tare89ebad2019-08-27 18:14:26 +010047
48LayerTestResult<int16_t, 4> AdditionInt16Test(
49 armnn::IWorkloadFactory& workloadFactory,
Keith Davis33a626f2020-08-27 15:38:12 +010050 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
51 const armnn::ITensorHandleFactory& tensorHandleFactory);
Aron Virginas-Tare89ebad2019-08-27 18:14:26 +010052
53LayerTestResult<int16_t, 4> AdditionBroadcastInt16Test(
54 armnn::IWorkloadFactory& workloadFactory,
Keith Davis33a626f2020-08-27 15:38:12 +010055 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
56 const armnn::ITensorHandleFactory& tensorHandleFactory);
Aron Virginas-Tare89ebad2019-08-27 18:14:26 +010057
58LayerTestResult<int16_t, 4> AdditionBroadcast1ElementInt16Test(
59 armnn::IWorkloadFactory& workloadFactory,
Keith Davis33a626f2020-08-27 15:38:12 +010060 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
61 const armnn::ITensorHandleFactory& tensorHandleFactory);
Aron Virginas-Tare89ebad2019-08-27 18:14:26 +010062
Teresa Charlinecb6b8e2020-05-22 18:08:23 +010063LayerTestResult<int32_t, 4> AdditionInt32Test(
64 armnn::IWorkloadFactory& workloadFactory,
Keith Davis33a626f2020-08-27 15:38:12 +010065 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
66 const armnn::ITensorHandleFactory& tensorHandleFactory);
Teresa Charlinecb6b8e2020-05-22 18:08:23 +010067
68LayerTestResult<int32_t, 4> AdditionBroadcastInt32Test(
69 armnn::IWorkloadFactory& workloadFactory,
Keith Davis33a626f2020-08-27 15:38:12 +010070 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
71 const armnn::ITensorHandleFactory& tensorHandleFactory);
Teresa Charlinecb6b8e2020-05-22 18:08:23 +010072
73LayerTestResult<int32_t, 4> AdditionBroadcast1ElementInt32Test(
74 armnn::IWorkloadFactory& workloadFactory,
Keith Davis33a626f2020-08-27 15:38:12 +010075 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
76 const armnn::ITensorHandleFactory& tensorHandleFactory);
Teresa Charlinecb6b8e2020-05-22 18:08:23 +010077
Aron Virginas-Tare89ebad2019-08-27 18:14:26 +010078LayerTestResult<float, 4> AdditionAfterMaxPoolTest(
79 armnn::IWorkloadFactory& workloadFactory,
Keith Davis33a626f2020-08-27 15:38:12 +010080 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
81 const armnn::ITensorHandleFactory& tensorHandleFactory);
Aron Virginas-Tare89ebad2019-08-27 18:14:26 +010082
83LayerTestResult<float, 4> CompareAdditionTest(
84 armnn::IWorkloadFactory& workloadFactory,
85 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
Keith Davis33a626f2020-08-27 15:38:12 +010086 armnn::IWorkloadFactory& refWorkloadFactory,
87 const armnn::ITensorHandleFactory& tensorHandleFactory,
88 const armnn::ITensorHandleFactory& refTensorHandleFactory);