blob: 28c7fe625b9d3d4512f19335b30a7a721b4b5f6b [file] [log] [blame]
Sadik Armagan0c3ea5b2021-02-03 09:29:30 +00001//
2// Copyright © 2020 Samsung Electronics Co Ltd and Contributors. All rights reserved.
Matthew Sloyan6dd07022023-01-25 12:40:11 +00003// Copyright © 2021 Arm Ltd and Contributors. All rights reserved.
Sadik Armagan0c3ea5b2021-02-03 09:29:30 +00004// SPDX-License-Identifier: MIT
5//
6
7#pragma once
8
Sadik Armagana097d2a2021-11-24 15:47:28 +00009#include <armnnTestUtils/LayerTestResult.hpp>
Sadik Armagan0c3ea5b2021-02-03 09:29:30 +000010
11#include <ResolveType.hpp>
12
13#include <armnn/backends/IBackendInternal.hpp>
Colm Donelan0c479742021-12-10 12:43:54 +000014#include <armnn/backends/WorkloadFactory.hpp>
Sadik Armagan0c3ea5b2021-02-03 09:29:30 +000015
16template<armnn::DataType ArmnnType, typename T = armnn::ResolveType<ArmnnType>>
17LayerTestResult<float, 4> ReduceSumSimpleTest(
18 armnn::IWorkloadFactory& workloadFactory,
19 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
20 const armnn::ITensorHandleFactory& tensorHandleFactory);
21
22template<armnn::DataType ArmnnType, typename T = armnn::ResolveType<ArmnnType>>
23LayerTestResult<float, 4> ReduceSumSingleAxisTest1(
24 armnn::IWorkloadFactory& workloadFactory,
25 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
26 const armnn::ITensorHandleFactory& tensorHandleFactory);
27
28template<armnn::DataType ArmnnType, typename T = armnn::ResolveType<ArmnnType>>
29LayerTestResult<float, 4> ReduceSumSingleAxisTest2(
30 armnn::IWorkloadFactory& workloadFactory,
31 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
32 const armnn::ITensorHandleFactory& tensorHandleFactory);
33
34template<armnn::DataType ArmnnType, typename T = armnn::ResolveType<ArmnnType>>
35LayerTestResult<float, 4> ReduceSumSingleAxisTest3(
36 armnn::IWorkloadFactory& workloadFactory,
37 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
38 const armnn::ITensorHandleFactory& tensorHandleFactory);
39
40template<armnn::DataType ArmnnType, typename T = armnn::ResolveType<ArmnnType>>
41LayerTestResult<float, 4> ReduceSumMultipleAxisTest(
42 armnn::IWorkloadFactory& workloadFactory,
43 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
44 const armnn::ITensorHandleFactory& tensorHandleFactory);