From 17fa2b4264e93b94730309d4d687692c73f51cc8 Mon Sep 17 00:00:00 2001 From: Nattapat Chaimanowong Date: Tue, 26 Feb 2019 12:26:08 +0000 Subject: IVGCVSW-2756 Fix bug in ClSpaceToBatchNdWorkload *Padding was not in format expected by Cl Change-Id: Id0de3fd2b306e31d555e2d67bc4406e5302dcd3b Signed-off-by: Nattapat Chaimanowong --- .../cl/workloads/ClSpaceToBatchNdWorkload.cpp | 26 ++++++++++------------ 1 file changed, 12 insertions(+), 14 deletions(-) diff --git a/src/backends/cl/workloads/ClSpaceToBatchNdWorkload.cpp b/src/backends/cl/workloads/ClSpaceToBatchNdWorkload.cpp index de58db4b33..64da92c815 100644 --- a/src/backends/cl/workloads/ClSpaceToBatchNdWorkload.cpp +++ b/src/backends/cl/workloads/ClSpaceToBatchNdWorkload.cpp @@ -31,17 +31,16 @@ arm_compute::Status ClSpaceToBatchNdWorkloadValidate(const TensorInfo& input, int32_t blockHeight = boost::numeric_cast(descriptor.m_BlockShape[0]); int32_t blockWidth = boost::numeric_cast(descriptor.m_BlockShape[1]); - // ACL expects paddingTopBottom [pad_top, pad_bottom] and paddingLeftRight [pad_left, pad_right] - arm_compute::Size2D paddingLeftRight = BuildArmComputeSize2D( - descriptor.m_PadList[0].first, descriptor.m_PadList[0].second); - arm_compute::Size2D paddingTopBottom = BuildArmComputeSize2D( - descriptor.m_PadList[1].first, descriptor.m_PadList[1].second); + arm_compute::Size2D paddingLeftTop = BuildArmComputeSize2D( + descriptor.m_PadList[1].first, descriptor.m_PadList[0].first); + arm_compute::Size2D paddingRightBottom = BuildArmComputeSize2D( + descriptor.m_PadList[1].second, descriptor.m_PadList[0].second); return arm_compute::CLSpaceToBatchLayer::validate(&aclInputInfo, blockWidth, blockHeight, - paddingTopBottom, - paddingLeftRight, + paddingLeftTop, + paddingRightBottom, &aclOutputInfo); } @@ -60,11 +59,10 @@ ClSpaceToBatchNdWorkload::ClSpaceToBatchNdWorkload( int32_t blockHeight = boost::numeric_cast(m_Data.m_Parameters.m_BlockShape[0]); int32_t blockWidth = boost::numeric_cast(m_Data.m_Parameters.m_BlockShape[1]); - // ACL expects paddingTopBottom [pad_top, pad_bottom] and paddingLeftRight [pad_left, pad_right] - arm_compute::Size2D paddingLeftRight = BuildArmComputeSize2D( - m_Data.m_Parameters.m_PadList[0].first, m_Data.m_Parameters.m_PadList[0].second); - arm_compute::Size2D paddingTopBottom = BuildArmComputeSize2D( - m_Data.m_Parameters.m_PadList[1].first, m_Data.m_Parameters.m_PadList[1].second); + arm_compute::Size2D paddingLeftTop = BuildArmComputeSize2D( + m_Data.m_Parameters.m_PadList[1].first, m_Data.m_Parameters.m_PadList[0].first); + arm_compute::Size2D paddingRightBottom = BuildArmComputeSize2D( + m_Data.m_Parameters.m_PadList[1].second, m_Data.m_Parameters.m_PadList[0].second); arm_compute::DataLayout aclDataLayout = ConvertDataLayout(m_Data.m_Parameters.m_DataLayout); input.info()->set_data_layout(aclDataLayout); @@ -73,8 +71,8 @@ ClSpaceToBatchNdWorkload::ClSpaceToBatchNdWorkload( m_SpaceToBatchLayer.configure(&input, blockWidth, blockHeight, - paddingTopBottom, - paddingLeftRight, + paddingLeftTop, + paddingRightBottom, &output); } -- cgit v1.2.1