diff options
author | Matteo Martincigh <matteo.martincigh@arm.com> | 2018-10-01 09:26:32 +0100 |
---|---|---|
committer | Matthew Bentham <matthew.bentham@arm.com> | 2018-10-22 17:25:39 +0100 |
commit | 5e0ed9fb1e86a45617c65376c4756b8317798e5e (patch) | |
tree | efca199088261cb937e8a32b0ee0841e70a9672c /1.0/HalPolicy.cpp | |
parent | beb3e1f460012f98921fc88488b6349f95c6e1d5 (diff) | |
download | android-nn-driver-5e0ed9fb1e86a45617c65376c4756b8317798e5e.tar.gz |
IVGCVSW-1875 Proper support for NHWC L2Normalization
* Removed input/output swizzling from ConvertL2Normalization
Change-Id: I623d878617614aec4d1f41556839808e6184a350
Diffstat (limited to '1.0/HalPolicy.cpp')
-rw-r--r-- | 1.0/HalPolicy.cpp | 14 |
1 files changed, 5 insertions, 9 deletions
diff --git a/1.0/HalPolicy.cpp b/1.0/HalPolicy.cpp index 82a8c447..174bbb3f 100644 --- a/1.0/HalPolicy.cpp +++ b/1.0/HalPolicy.cpp @@ -1083,16 +1083,14 @@ bool HalPolicy::ConvertL2Normalization(const Operation& operation, const Model& const armnn::TensorInfo& inputInfo = input.GetTensorInfo(); const armnn::TensorInfo& outputInfo = GetTensorInfoForOperand(*output); - const armnn::TensorInfo swizzledInputInfo = armnnUtils::Permuted(inputInfo, NHWCToArmNN); - const armnn::TensorInfo swizzledOutputInfo = armnnUtils::Permuted(outputInfo, NHWCToArmNN); - armnn::L2NormalizationDescriptor desc; + desc.m_DataLayout = armnn::DataLayout::NHWC; if (!IsLayerSupported(__func__, armnn::IsL2NormalizationSupported, data.m_Compute, - swizzledInputInfo, - swizzledOutputInfo, + inputInfo, + outputInfo, desc)) { return false; @@ -1100,11 +1098,9 @@ bool HalPolicy::ConvertL2Normalization(const Operation& operation, const Model& armnn::IConnectableLayer* layer = data.m_Network->AddL2NormalizationLayer(desc); assert(layer != nullptr); - layer->GetOutputSlot(0).SetTensorInfo(swizzledOutputInfo); - - armnn::IConnectableLayer& outSwizzleLayer = SwizzleInDeswizzleOut(*data.m_Network, input, *layer); + input.Connect(layer->GetInputSlot(0)); - return SetupAndTrackLayerOutputSlot(operation, 0, outSwizzleLayer, model, data); + return SetupAndTrackLayerOutputSlot(operation, 0, *layer, model, data); } bool HalPolicy::ConvertL2Pool2d(const Operation& operation, const Model& model, ConversionData& data) |