aboutsummaryrefslogtreecommitdiff
path: root/src/backends/cl/ClLayerSupport.cpp
diff options
context:
space:
mode:
authorCian McGriskin <cian.mcgriskin@arm.com>2023-07-26 11:52:47 +0100
committerNikhil Raj <nikhil.raj@arm.com>2023-08-04 20:48:03 +0100
commit3b3dcbf0321fadcb2b7b5b550a4d03f510d7cb7b (patch)
tree9658a4d20fc73bfb8498aa8617202c49406f9eaa /src/backends/cl/ClLayerSupport.cpp
parent88bef3acd73069df13256e818f32555b19e1a8b4 (diff)
downloadarmnn-3b3dcbf0321fadcb2b7b5b550a4d03f510d7cb7b.tar.gz
IVGCVSW-2291 TILE Operator CL Implementation
* Added Tile Operator Implementation to CL * Added calls to the existing UnitTests * Added Documentation Signed-off-by: Cian McGriskin <cian.mcgriskin@arm.com> Change-Id: If7d25c7aa669c24e7816e5d445c7a3b9ce6972d4
Diffstat (limited to 'src/backends/cl/ClLayerSupport.cpp')
-rw-r--r--src/backends/cl/ClLayerSupport.cpp18
1 files changed, 18 insertions, 0 deletions
diff --git a/src/backends/cl/ClLayerSupport.cpp b/src/backends/cl/ClLayerSupport.cpp
index ff2b576f3d..60dab0538a 100644
--- a/src/backends/cl/ClLayerSupport.cpp
+++ b/src/backends/cl/ClLayerSupport.cpp
@@ -81,6 +81,7 @@
#include "workloads/ClStackWorkload.hpp"
#include "workloads/ClStridedSliceWorkload.hpp"
#include "workloads/ClSubtractionWorkload.hpp"
+#include "workloads/ClTileWorkload.hpp"
#include "workloads/ClTransposeConvolution2dWorkload.hpp"
#include "workloads/ClTransposeWorkload.hpp"
#include "workloads/ClUnidirectionalSequenceLstmFloatWorkload.hpp"
@@ -627,6 +628,11 @@ bool ClLayerSupport::IsLayerSupported(const LayerType& type,
ARMNN_NO_DEPRECATE_WARN_BEGIN
return IsSubtractionSupported(infos[0], infos[1], infos[2], reasonIfUnsupported);
ARMNN_NO_DEPRECATE_WARN_END
+ case LayerType::Tile:
+ return IsTileSupported(infos[0],
+ infos[1],
+ *(PolymorphicDowncast<const TileDescriptor*>(&descriptor)),
+ reasonIfUnsupported);
case LayerType::Transpose:
return IsTransposeSupported(infos[0],
infos[1],
@@ -1527,6 +1533,18 @@ bool ClLayerSupport::IsSubtractionSupported(const TensorInfo& input0,
nullptr);
}
+bool ClLayerSupport::IsTileSupported(const TensorInfo& input,
+ const TensorInfo& output,
+ const TileDescriptor& descriptor,
+ Optional<std::string&> reasonIfUnsupported) const
+{
+ FORWARD_WORKLOAD_VALIDATE_FUNC(ClTileWorkloadValidate,
+ reasonIfUnsupported,
+ input,
+ output,
+ descriptor);
+}
+
bool ClLayerSupport::IsTransposeConvolution2dSupported(const TensorInfo& input,
const TensorInfo& output,
const TransposeConvolution2dDescriptor& descriptor,