diff options
author | Matteo Martincigh <matteo.martincigh@arm.com> | 2018-10-19 16:40:03 +0100 |
---|---|---|
committer | Matthew Bentham <matthew.bentham@arm.com> | 2018-10-25 14:06:56 +0100 |
commit | 28dcab6c176a3938519809aa9da7321e4ede7623 (patch) | |
tree | f83cebcf0c89e9b9f9464292e14268b90c8cc628 /src/backends/cl/workloads/ClMeanWorkload.hpp | |
parent | 70104000ddcf3bc1a1d21f16d1468456ca17b80a (diff) | |
download | armnn-28dcab6c176a3938519809aa9da7321e4ede7623.tar.gz |
IVGCVSW-2049 + IVGCVSW-2051 Create the CL Mean Float workload and add
the unit tests
* Created the ClFloatWorkload class
* Added ClMeanValidate validation function
* Added helper function to convert the reduction axes from the ArmNN
format to ACL's
* Added workload tests
* Added some unit tests
* These changes need the CL pin to be pointing at least to revision
88d871028eeae57f9e4536d0329110eccb5e2890 (COMPMID-1574 Implement
ReduceMean in OpenCL)
!android-nn-driver:155033
Change-Id: I694fd36be0458c90e158172afde045fcc88c32ae
Diffstat (limited to 'src/backends/cl/workloads/ClMeanWorkload.hpp')
-rw-r--r-- | src/backends/cl/workloads/ClMeanWorkload.hpp | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/src/backends/cl/workloads/ClMeanWorkload.hpp b/src/backends/cl/workloads/ClMeanWorkload.hpp new file mode 100644 index 0000000000..c9f0356e04 --- /dev/null +++ b/src/backends/cl/workloads/ClMeanWorkload.hpp @@ -0,0 +1,31 @@ +// +// Copyright © 2017 Arm Ltd. All rights reserved. +// SPDX-License-Identifier: MIT +// + +#pragma once + +#include <backends/Workload.hpp> + +#include <arm_compute/runtime/CL/CLFunctions.h> + +namespace armnn +{ + +arm_compute::Status ClMeanValidate(const TensorInfo& input, + const TensorInfo& output, + const MeanDescriptor& desc); + +class ClMeanWorkload : public BaseWorkload<MeanQueueDescriptor> +{ +public: + ClMeanWorkload(const MeanQueueDescriptor& descriptor, const WorkloadInfo& info); + + void Execute() const override; + +private: + // Not using CLMeanStdDev, as 4D input tensor support for Mean has been added to a new function called CLReduceMean. + mutable arm_compute::CLReduceMean m_Layer; +}; + +} //namespace armnn |