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/neon/workloads/NeonMergerWorkload.hpp | 16 ++++++++++++---- 1 file changed, 12 insertions(+), 4 deletions(-) (limited to 'src/backends/neon/workloads/NeonMergerWorkload.hpp') diff --git a/src/backends/neon/workloads/NeonMergerWorkload.hpp b/src/backends/neon/workloads/NeonMergerWorkload.hpp index 7103d8a469..a4f36d18bc 100644 --- a/src/backends/neon/workloads/NeonMergerWorkload.hpp +++ b/src/backends/neon/workloads/NeonMergerWorkload.hpp @@ -6,18 +6,26 @@ #pragma once #include +#include namespace armnn { +arm_compute::Status NeonMergerWorkloadValidate(const std::vector& inputs, + const TensorInfo& output, + const MergerDescriptor& descriptor); + class NeonMergerWorkload : public BaseWorkload { public: + NeonMergerWorkload(const MergerQueueDescriptor& descriptor, const WorkloadInfo& info); + using BaseWorkload::BaseWorkload; + void Execute() const override; + +private: + mutable arm_compute::NEConcatenateLayer m_Layer; + bool m_Execute; - virtual void Execute() const override - { - // With subtensors, merger is a no-op. - } }; } //namespace armnn -- cgit v1.2.1