From 3e6676da92c228196c6cc7e6fe4e8891ac1b387c Mon Sep 17 00:00:00 2001 From: Finn Williams Date: Thu, 14 May 2020 13:41:48 +0100 Subject: IVGCVSW-4669 Set destination tensorInfo in MoveAllConnections() Signed-off-by: Finn Williams Change-Id: I3563209dcb3db1b40cf2db3855adc631b5e323be --- src/armnn/Layer.cpp | 1 + src/armnn/optimizations/FoldPadIntoConvolution2d.hpp | 2 -- src/armnn/optimizations/MovePermuteUp.hpp | 4 ---- src/armnn/optimizations/MoveTransposeUp.hpp | 4 ---- src/armnn/optimizations/OptimizeConsecutiveReshapes.hpp | 2 -- src/armnn/optimizations/PermuteAndBatchToSpaceAsDepthToSpace.hpp | 1 - src/armnn/optimizations/PermuteAsReshape.hpp | 1 - src/armnn/optimizations/TransposeAsReshape.hpp | 1 - 8 files changed, 1 insertion(+), 15 deletions(-) diff --git a/src/armnn/Layer.cpp b/src/armnn/Layer.cpp index 024a18862d..b7a6fd96e3 100644 --- a/src/armnn/Layer.cpp +++ b/src/armnn/Layer.cpp @@ -119,6 +119,7 @@ void OutputSlot::MoveAllConnections(OutputSlot& destination) InputSlot& connection = *GetConnection(0); Disconnect(connection); destination.Connect(connection); + destination.GetOutputHandler().SetTensorInfo(GetOutputHandler().GetTensorInfo()); } } diff --git a/src/armnn/optimizations/FoldPadIntoConvolution2d.hpp b/src/armnn/optimizations/FoldPadIntoConvolution2d.hpp index 66fffbb280..5def6dfdd2 100644 --- a/src/armnn/optimizations/FoldPadIntoConvolution2d.hpp +++ b/src/armnn/optimizations/FoldPadIntoConvolution2d.hpp @@ -30,7 +30,6 @@ public: Convolution2dLayer* convolution2dLayer = PolymorphicDowncast(&child); OutputSlot* parentOut = base.GetInputSlot(0).GetConnectedOutputSlot(); - const TensorInfo& outInfo = child.GetOutputHandler().GetTensorInfo(); const std::string name = std::string("folded-") + base.GetName() + std::string("-into-") + child.GetName(); Convolution2dDescriptor descriptor = convolution2dLayer->GetParameters(); @@ -59,7 +58,6 @@ public: auto& newConv2dLayer = *graph.InsertNewLayer(base.GetInputSlot(0), descriptor, name.c_str()); - newConv2dLayer.GetOutputHandler().SetTensorInfo(outInfo); // Copy weights and bias to the new convolution layer ARMNN_ASSERT_MSG(convolution2dLayer->m_Weight != nullptr, diff --git a/src/armnn/optimizations/MovePermuteUp.hpp b/src/armnn/optimizations/MovePermuteUp.hpp index 15c6f61e97..4fea22b165 100644 --- a/src/armnn/optimizations/MovePermuteUp.hpp +++ b/src/armnn/optimizations/MovePermuteUp.hpp @@ -46,10 +46,6 @@ public: permLayer.GetOutputHandler().SetTensorInfo(permOutInfo); } - // Sets permuted output tensor info - const TensorInfo& childOutInfo = permute->GetOutputHandler().GetTensorInfo(); - base.GetOutputHandler().SetTensorInfo(childOutInfo); - // Bypasses permute. It will be removed as it's left unconnected. permute->GetOutputSlot().MoveAllConnections(base.GetOutputSlot()); } diff --git a/src/armnn/optimizations/MoveTransposeUp.hpp b/src/armnn/optimizations/MoveTransposeUp.hpp index 86c018868e..1e20f9cb4f 100644 --- a/src/armnn/optimizations/MoveTransposeUp.hpp +++ b/src/armnn/optimizations/MoveTransposeUp.hpp @@ -46,10 +46,6 @@ public: permLayer.GetOutputHandler().SetTensorInfo(permOutInfo); } - // Sets transposed output tensor info - const TensorInfo& childOutInfo = transpose->GetOutputHandler().GetTensorInfo(); - base.GetOutputHandler().SetTensorInfo(childOutInfo); - // Bypasses transpose. It will be removed as it's left unconnected. transpose->GetOutputSlot().MoveAllConnections(base.GetOutputSlot()); } diff --git a/src/armnn/optimizations/OptimizeConsecutiveReshapes.hpp b/src/armnn/optimizations/OptimizeConsecutiveReshapes.hpp index 39bfe6e936..546b37d525 100644 --- a/src/armnn/optimizations/OptimizeConsecutiveReshapes.hpp +++ b/src/armnn/optimizations/OptimizeConsecutiveReshapes.hpp @@ -43,8 +43,6 @@ public: const ReshapeDescriptor descriptor{outInfo.GetShape()}; auto& newReshape = *graph.InsertNewLayer(base.GetInputSlot(0), descriptor, name.c_str()); - // Sets tensor info for new layer. - newReshape.GetOutputHandler().SetTensorInfo(outInfo); // Parent is now the new layer. parentOut = &newReshape.GetOutputSlot(); } diff --git a/src/armnn/optimizations/PermuteAndBatchToSpaceAsDepthToSpace.hpp b/src/armnn/optimizations/PermuteAndBatchToSpaceAsDepthToSpace.hpp index ea4de9df6f..d94eb7ca0d 100644 --- a/src/armnn/optimizations/PermuteAndBatchToSpaceAsDepthToSpace.hpp +++ b/src/armnn/optimizations/PermuteAndBatchToSpaceAsDepthToSpace.hpp @@ -90,7 +90,6 @@ public: auto& depthToSpace = *graph.InsertNewLayer(base.GetInputSlot(0), depthToSpaceDesc, name.c_str()); - depthToSpace.GetOutputHandler().SetTensorInfo(outputInfo); // Moves connections from child output to new layer. // Child layer will be removed as it's left unconnected. diff --git a/src/armnn/optimizations/PermuteAsReshape.hpp b/src/armnn/optimizations/PermuteAsReshape.hpp index 68fa667085..7878ecfb93 100644 --- a/src/armnn/optimizations/PermuteAsReshape.hpp +++ b/src/armnn/optimizations/PermuteAsReshape.hpp @@ -25,7 +25,6 @@ public: const ReshapeDescriptor descriptor{outInfo.GetShape()}; // Inserts NewLayer so layers don't need to be re-sorted. auto reshape = graph.InsertNewLayer(permute.GetInputSlot(0), descriptor, name.c_str()); - reshape->GetOutputHandler().SetTensorInfo(outInfo); // Bypass permute. It will be deleted since it's left unconnected. permute.GetOutputSlot().MoveAllConnections(reshape->GetOutputSlot()); diff --git a/src/armnn/optimizations/TransposeAsReshape.hpp b/src/armnn/optimizations/TransposeAsReshape.hpp index 4bb2f192f3..d6fb9bc316 100644 --- a/src/armnn/optimizations/TransposeAsReshape.hpp +++ b/src/armnn/optimizations/TransposeAsReshape.hpp @@ -25,7 +25,6 @@ public: const ReshapeDescriptor descriptor{outInfo.GetShape()}; // Inserts NewLayer so layers don't need to be re-sorted. auto reshape = graph.InsertNewLayer(transpose.GetInputSlot(0), descriptor, name.c_str()); - reshape->GetOutputHandler().SetTensorInfo(outInfo); // Bypass transpose. It will be deleted since it's left unconnected. transpose.GetOutputSlot().MoveAllConnections(reshape->GetOutputSlot()); -- cgit v1.2.1