From 8599a415c159aa867db12853b3195f0f0a51ee6b Mon Sep 17 00:00:00 2001 From: Nikhil Raj Date: Mon, 19 Nov 2018 14:51:07 +0000 Subject: IVGCVSW-2043 - Merger using ACL for innermost concat axis * Add ClMergerWorkload and NeonMergerWorkload to call ACL for innermost concat axis * Modify layer support to call ClMergerWorkloadValidate and NeonMergerWorkloadValidate when concat axis is inner most * Add m_ConcatAxis to MergerDescriptor * Modify MergerQueueDescriptor::Validate to check sub tensor only when using subtensor !android-nn-driver:166 Change-Id: I56676b43964c8d6d726387b41b3cc34a512c0f0a --- src/backends/cl/workloads/ClMergerWorkload.hpp | 17 ++++++++++++----- 1 file changed, 12 insertions(+), 5 deletions(-) (limited to 'src/backends/cl/workloads/ClMergerWorkload.hpp') diff --git a/src/backends/cl/workloads/ClMergerWorkload.hpp b/src/backends/cl/workloads/ClMergerWorkload.hpp index 948fb58bd1..8189a1b24a 100644 --- a/src/backends/cl/workloads/ClMergerWorkload.hpp +++ b/src/backends/cl/workloads/ClMergerWorkload.hpp @@ -7,18 +7,25 @@ #include +#include + namespace armnn { +arm_compute::Status ClMergerWorkloadValidate(const std::vector& inputs, + const TensorInfo& output, + const MergerDescriptor& descriptor); + class ClMergerWorkload : public BaseWorkload { public: - using BaseWorkload::BaseWorkload; + ClMergerWorkload(const MergerQueueDescriptor& descriptor, const WorkloadInfo& info); + + void Execute() const override; - void Execute() const override - { - // With subtensors, merger is a no-op. - } +private: + mutable arm_compute::CLConcatenateLayer m_Layer; + bool m_Execute; }; } //namespace armnn -- cgit v1.2.1