aboutsummaryrefslogtreecommitdiff
path: root/src/backends/cl/workloads/ClPooling3dWorkload.hpp
diff options
context:
space:
mode:
authorRyan OShea <ryan.oshea3@arm.com>2022-03-09 10:29:02 +0000
committerKeithARM <keith.davis@arm.com>2022-04-13 11:14:10 +0000
commitbab8fa9a11cf3bfef4b72fb757b81575b6fd75f0 (patch)
treeddec7127c8683fb38dd595d8578c94e0479af7fe /src/backends/cl/workloads/ClPooling3dWorkload.hpp
parentb8bf004911d635043e586198fa85e3f2a07542eb (diff)
downloadarmnn-bab8fa9a11cf3bfef4b72fb757b81575b6fd75f0.tar.gz
IVGCVSW-6174 Add Cl Pooling3d Workload
* Add IsSupported for Pooling3d * Add CreateWorkload case for Pooling3d * Create new ClPooling3dWorkload header and source files * Add Pooling3d workload to ClWorkloads.hpp * Add tests for Pooling3d workload * Add Pooling3d build function to ArmComputeTensorUtils Change-Id: Ia270b0fe809a171ed73af14376de8708b346d500 Signed-off-by: Ryan OShea <ryan.oshea3@arm.com>
Diffstat (limited to 'src/backends/cl/workloads/ClPooling3dWorkload.hpp')
-rw-r--r--src/backends/cl/workloads/ClPooling3dWorkload.hpp34
1 files changed, 34 insertions, 0 deletions
diff --git a/src/backends/cl/workloads/ClPooling3dWorkload.hpp b/src/backends/cl/workloads/ClPooling3dWorkload.hpp
new file mode 100644
index 0000000000..75777db188
--- /dev/null
+++ b/src/backends/cl/workloads/ClPooling3dWorkload.hpp
@@ -0,0 +1,34 @@
+//
+// Copyright © 2022 Arm Ltd and Contributors. All rights reserved.
+// SPDX-License-Identifier: MIT
+//
+
+#pragma once
+
+#include "ClBaseWorkload.hpp"
+
+#include <arm_compute/runtime/CL/functions/CLPooling3dLayer.h>
+
+namespace armnn
+{
+
+ arm_compute::Status ClPooling3dWorkloadValidate(const TensorInfo& input,
+ const TensorInfo& output,
+ const Pooling3dDescriptor& descriptor);
+
+ class ClPooling3dWorkload : public ClBaseWorkload<Pooling3dQueueDescriptor>
+ {
+ public:
+ using BaseWorkload<Pooling3dQueueDescriptor>::m_Data;
+
+ ClPooling3dWorkload(const Pooling3dQueueDescriptor& descriptor,
+ const WorkloadInfo& info,
+ const arm_compute::CLCompileContext& clCompileContext);
+
+ void Execute() const override;
+
+ private:
+ mutable arm_compute::CLPooling3dLayer m_PoolingLayer;
+ };
+
+} //namespace armnn