xref: /aosp_15_r20/external/armnn/src/backends/backendsCommon/test/layerTests/BatchNormalizationTestImpl.hpp (revision 89c4ff92f2867872bb9e2354d150bf0c8c502810)
1 //
2 // Copyright © 2017 Arm Ltd. All rights reserved.
3 // SPDX-License-Identifier: MIT
4 //
5 
6 #pragma once
7 
8 #include <armnnTestUtils/LayerTestResult.hpp>
9 
10 #include <Half.hpp>
11 
12 #include <armnn/backends/IBackendInternal.hpp>
13 #include <armnn/backends/WorkloadFactory.hpp>
14 
15 LayerTestResult<float, 4> BatchNormFloat32Test(
16     armnn::IWorkloadFactory& workloadFactory,
17     const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
18     const armnn::ITensorHandleFactory& tensorHandleFactory);
19 
20 LayerTestResult<float, 4> BatchNormFloat32NhwcTest(
21     armnn::IWorkloadFactory& workloadFactory,
22     const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
23     const armnn::ITensorHandleFactory& tensorHandleFactory);
24 
25 LayerTestResult<armnn::Half, 4> BatchNormFloat16Test(
26     armnn::IWorkloadFactory& workloadFactory,
27     const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
28     const armnn::ITensorHandleFactory& tensorHandleFactory);
29 
30 LayerTestResult<armnn::Half, 4> BatchNormFloat16NhwcTest(
31     armnn::IWorkloadFactory& workloadFactory,
32     const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
33     const armnn::ITensorHandleFactory& tensorHandleFactory);
34 
35 LayerTestResult<uint8_t, 4> BatchNormUint8Test(
36     armnn::IWorkloadFactory& workloadFactory,
37     const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
38     const armnn::ITensorHandleFactory& tensorHandleFactory);
39 
40 LayerTestResult<uint8_t, 4> BatchNormUint8NhwcTest(
41     armnn::IWorkloadFactory& workloadFactory,
42     const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
43     const armnn::ITensorHandleFactory& tensorHandleFactory);
44 
45 LayerTestResult<int16_t, 4> BatchNormInt16Test(
46     armnn::IWorkloadFactory& workloadFactory,
47     const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
48     const armnn::ITensorHandleFactory& tensorHandleFactory);
49 
50 LayerTestResult<int16_t, 4> BatchNormInt16NhwcTest(
51     armnn::IWorkloadFactory& workloadFactory,
52     const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
53     const armnn::ITensorHandleFactory& tensorHandleFactory);
54 
55 LayerTestResult<float, 4> CompareBatchNormTest(
56     armnn::IWorkloadFactory& workloadFactory,
57     const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
58     armnn::IWorkloadFactory& refWorkloadFactory,
59     const armnn::ITensorHandleFactory& tensorHandleFactory,
60     const armnn::ITensorHandleFactory& refTensorHandleFactory);
61