blob: 87d076047141d52c2b2a0b81781839e5e6b018d0 [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
Sadik Armagana097d2a2021-11-24 15:47:28 +00008#include <armnnTestUtils/LayerTestResult.hpp>
Aron Virginas-Tar00d306e2019-08-28 18:08:46 +01009
Matthew Jackson9bff1442019-09-12 09:08:23 +010010#include <Half.hpp>
11
Matteo Martincighe5b8eb92019-11-28 15:45:42 +000012#include <armnn/backends/IBackendInternal.hpp>
Colm Donelan0c479742021-12-10 12:43:54 +000013#include <armnn/backends/WorkloadFactory.hpp>
Aron Virginas-Tar00d306e2019-08-28 18:08:46 +010014
Matthew Jackson9bff1442019-09-12 09:08:23 +010015LayerTestResult<float, 4> BatchNormFloat32Test(
Aron Virginas-Tar00d306e2019-08-28 18:08:46 +010016 armnn::IWorkloadFactory& workloadFactory,
Keith Davis33a626f2020-08-27 15:38:12 +010017 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
18 const armnn::ITensorHandleFactory& tensorHandleFactory);
Aron Virginas-Tar00d306e2019-08-28 18:08:46 +010019
Matthew Jackson9bff1442019-09-12 09:08:23 +010020LayerTestResult<float, 4> BatchNormFloat32NhwcTest(
21 armnn::IWorkloadFactory& workloadFactory,
Keith Davis33a626f2020-08-27 15:38:12 +010022 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
23 const armnn::ITensorHandleFactory& tensorHandleFactory);
Matthew Jackson9bff1442019-09-12 09:08:23 +010024
25LayerTestResult<armnn::Half, 4> BatchNormFloat16Test(
26 armnn::IWorkloadFactory& workloadFactory,
Keith Davis33a626f2020-08-27 15:38:12 +010027 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
28 const armnn::ITensorHandleFactory& tensorHandleFactory);
Matthew Jackson9bff1442019-09-12 09:08:23 +010029
30LayerTestResult<armnn::Half, 4> BatchNormFloat16NhwcTest(
Aron Virginas-Tar00d306e2019-08-28 18:08:46 +010031 armnn::IWorkloadFactory& workloadFactory,
Keith Davis33a626f2020-08-27 15:38:12 +010032 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
33 const armnn::ITensorHandleFactory& tensorHandleFactory);
Aron Virginas-Tar00d306e2019-08-28 18:08:46 +010034
35LayerTestResult<uint8_t, 4> BatchNormUint8Test(
36 armnn::IWorkloadFactory& workloadFactory,
Keith Davis33a626f2020-08-27 15:38:12 +010037 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
38 const armnn::ITensorHandleFactory& tensorHandleFactory);
Aron Virginas-Tar00d306e2019-08-28 18:08:46 +010039
40LayerTestResult<uint8_t, 4> BatchNormUint8NhwcTest(
41 armnn::IWorkloadFactory& workloadFactory,
Keith Davis33a626f2020-08-27 15:38:12 +010042 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
43 const armnn::ITensorHandleFactory& tensorHandleFactory);
Aron Virginas-Tar00d306e2019-08-28 18:08:46 +010044
45LayerTestResult<int16_t, 4> BatchNormInt16Test(
46 armnn::IWorkloadFactory& workloadFactory,
Keith Davis33a626f2020-08-27 15:38:12 +010047 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
48 const armnn::ITensorHandleFactory& tensorHandleFactory);
Aron Virginas-Tar00d306e2019-08-28 18:08:46 +010049
50LayerTestResult<int16_t, 4> BatchNormInt16NhwcTest(
51 armnn::IWorkloadFactory& workloadFactory,
Keith Davis33a626f2020-08-27 15:38:12 +010052 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
53 const armnn::ITensorHandleFactory& tensorHandleFactory);
Aron Virginas-Tar00d306e2019-08-28 18:08:46 +010054
55LayerTestResult<float, 4> CompareBatchNormTest(
56 armnn::IWorkloadFactory& workloadFactory,
57 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
Keith Davis33a626f2020-08-27 15:38:12 +010058 armnn::IWorkloadFactory& refWorkloadFactory,
59 const armnn::ITensorHandleFactory& tensorHandleFactory,
60 const armnn::ITensorHandleFactory& refTensorHandleFactory);