aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNattapat Chaimanowong <nattapat.chaimanowong@arm.com>2019-02-26 12:26:08 +0000
committerNattapat Chaimanowong <nattapat.chaimanowong@arm.com>2019-02-26 12:26:08 +0000
commit17fa2b4264e93b94730309d4d687692c73f51cc8 (patch)
tree9d6c6331e9cac7cadb671d6c480b39d95a7020a1
parent757b0d9a32ef0d5eeba8bea06280b60a3284ecf8 (diff)
downloadarmnn-17fa2b4264e93b94730309d4d687692c73f51cc8.tar.gz
IVGCVSW-2756 Fix bug in ClSpaceToBatchNdWorkload
*Padding was not in format expected by Cl Change-Id: Id0de3fd2b306e31d555e2d67bc4406e5302dcd3b Signed-off-by: Nattapat Chaimanowong <nattapat.chaimanowong@arm.com>
-rw-r--r--src/backends/cl/workloads/ClSpaceToBatchNdWorkload.cpp26
1 files 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<int32_t>(descriptor.m_BlockShape[0]);
int32_t blockWidth = boost::numeric_cast<int32_t>(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<int32_t>(m_Data.m_Parameters.m_BlockShape[0]);
int32_t blockWidth = boost::numeric_cast<int32_t>(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);
}