xref: /aosp_15_r20/external/armnn/src/backends/neon/workloads/NeonInstanceNormalizationWorkload.hpp (revision 89c4ff92f2867872bb9e2354d150bf0c8c502810)
1 //
2 // Copyright © 2019 Arm Ltd and Contributors. All rights reserved.
3 // SPDX-License-Identifier: MIT
4 //
5 
6 #pragma once
7 
8 #include "NeonBaseWorkload.hpp"
9 
10 #include <neon/workloads/NeonWorkloadUtils.hpp>
11 
12 #include <arm_compute/runtime/NEON/functions/NEInstanceNormalizationLayer.h>
13 
14 namespace armnn
15 {
16 
17 arm_compute::Status NeonInstanceNormalizationWorkloadValidate(const TensorInfo& input,
18                                                               const TensorInfo& output,
19                                                               const InstanceNormalizationDescriptor& descriptor);
20 
21 class NeonInstanceNormalizationWorkload : public NeonBaseWorkload<InstanceNormalizationQueueDescriptor>
22 {
23 public:
24     NeonInstanceNormalizationWorkload(const InstanceNormalizationQueueDescriptor& descriptor,
25                                       const WorkloadInfo& info);
26     void Execute() const override;
27 
28 private:
29     mutable arm_compute::NEInstanceNormalizationLayer m_Layer;
30 };
31 
32 } // namespace armnn