blob: 283f0dfec46715ca8c7bbc9bcf128b2fb1b08b1e [file] [log] [blame]
Sadik Armagan0c3ea5b2021-02-03 09:29:30 +00001//
2// Copyright © 2020 Samsung Electronics Co Ltd and Contributors. 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>
Sadik Armagan0c3ea5b2021-02-03 09:29:30 +00009
10#include <ResolveType.hpp>
11
12#include <armnn/backends/IBackendInternal.hpp>
Colm Donelan0c479742021-12-10 12:43:54 +000013#include <armnn/backends/WorkloadFactory.hpp>
Sadik Armagan0c3ea5b2021-02-03 09:29:30 +000014
15template<armnn::DataType ArmnnType, typename T = armnn::ResolveType<ArmnnType>>
16LayerTestResult<float, 4> ReduceSumSimpleTest(
17 armnn::IWorkloadFactory& workloadFactory,
18 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
19 const armnn::ITensorHandleFactory& tensorHandleFactory);
20
21template<armnn::DataType ArmnnType, typename T = armnn::ResolveType<ArmnnType>>
22LayerTestResult<float, 4> ReduceSumSingleAxisTest1(
23 armnn::IWorkloadFactory& workloadFactory,
24 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
25 const armnn::ITensorHandleFactory& tensorHandleFactory);
26
27template<armnn::DataType ArmnnType, typename T = armnn::ResolveType<ArmnnType>>
28LayerTestResult<float, 4> ReduceSumSingleAxisTest2(
29 armnn::IWorkloadFactory& workloadFactory,
30 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
31 const armnn::ITensorHandleFactory& tensorHandleFactory);
32
33template<armnn::DataType ArmnnType, typename T = armnn::ResolveType<ArmnnType>>
34LayerTestResult<float, 4> ReduceSumSingleAxisTest3(
35 armnn::IWorkloadFactory& workloadFactory,
36 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
37 const armnn::ITensorHandleFactory& tensorHandleFactory);
38
39template<armnn::DataType ArmnnType, typename T = armnn::ResolveType<ArmnnType>>
40LayerTestResult<float, 4> ReduceSumMultipleAxisTest(
41 armnn::IWorkloadFactory& workloadFactory,
42 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
43 const armnn::ITensorHandleFactory& tensorHandleFactory);