From 4cc341cf8b5a6e6bb0543504cbbfde6fa11a2cdb Mon Sep 17 00:00:00 2001 From: Mike Kelly Date: Fri, 7 Jul 2023 15:43:06 +0100 Subject: IVGCVSW-7830 Add backend optimizations to remove Reshapes where possible * Added optimization to remove reshapes for Neon and Ref Backends by using overridden TensorInfos * Added ability to delete Subgraphs during Optimization * Fixed naming error in NeonEndToEndTests and CLEndToEndTests * Added LayerNameAndTypeCheck for testing. * Fixed error where layers were not marked as altered when removed in CLBackend Signed-off-by: Mike Kelly Change-Id: I1ac25cd4ec9821470d961831ae2c8d24882276cc --- src/armnn/layers/ConcatLayer.cpp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'src/armnn/layers/ConcatLayer.cpp') diff --git a/src/armnn/layers/ConcatLayer.cpp b/src/armnn/layers/ConcatLayer.cpp index 7a1b689b2c..4629bf245e 100644 --- a/src/armnn/layers/ConcatLayer.cpp +++ b/src/armnn/layers/ConcatLayer.cpp @@ -120,7 +120,7 @@ void ConcatLayer::CreateTensors(const TensorHandleFactoryRegistry& registry, // 3) the input does not come from a Constant layer or input layer // 4) the input is only read by this concat layer // 5) if concat along x or y (2 innermost dimensions) and the previous layers do not require padding - // 6) the input does not have an Overridden TensorInfo + // 6) neither the inputs nor the output have an Overridden TensorInfo if (slot && parentInfo.IsTypeSpaceMatch(info) && //(1) factoryId == slot->GetTensorHandleFactoryId() && //(2) @@ -128,6 +128,7 @@ void ConcatLayer::CreateTensors(const TensorHandleFactoryRegistry& registry, slot->GetOwningLayer().GetType() != LayerType::Input && //(3) slot->GetNumConnections() == 1 && canUseSubTensorOnXorY && //(5) + !GetOutputSlot(0).GetConnection(0)->IsTensorInfoOverridden() && //(6) !currentLayer->GetInputSlot(i).IsTensorInfoOverridden()) //(6) { ARMNN_NO_DEPRECATE_WARN_BEGIN -- cgit v1.2.1