From 46c657d34e1d125b14c89140c13db94493e447b7 Mon Sep 17 00:00:00 2001 From: Teresa Charlin Date: Wed, 27 Oct 2021 22:29:13 +0100 Subject: IVGCVSW-6519 Extend pad workload for GpuAcc to support mirror padding * Add UnitTest for GpuAcc Signed-off-by: Teresa Charlin Change-Id: I235900dc62fb043c5ce9c8cd4f63dcc4e5393233 --- src/backends/cl/workloads/ClPadWorkload.cpp | 21 ++++++++++++++++----- 1 file changed, 16 insertions(+), 5 deletions(-) (limited to 'src/backends/cl/workloads') diff --git a/src/backends/cl/workloads/ClPadWorkload.cpp b/src/backends/cl/workloads/ClPadWorkload.cpp index 48d61b0b8a..4f8c34cb77 100644 --- a/src/backends/cl/workloads/ClPadWorkload.cpp +++ b/src/backends/cl/workloads/ClPadWorkload.cpp @@ -1,11 +1,12 @@ // -// Copyright © 2017 Arm Ltd. All rights reserved. +// Copyright © 2017 Arm Ltd and Contributors. All rights reserved. // SPDX-License-Identifier: MIT // #include "ClPadWorkload.hpp" #include +#include #include #include @@ -43,7 +44,12 @@ ClPadWorkload::ClPadWorkload(const PadQueueDescriptor& descriptor, { ARMNN_SCOPED_PROFILING_EVENT(Compute::Undefined, "ClPadWorkload_configure"); - m_Layer.configure(clCompileContext, &input, &output, padList, pixelValue); + m_Layer.configure(clCompileContext, + &input, + &output, + padList, + pixelValue, + ConvertPaddingModeToAcl(descriptor.m_Parameters.m_PaddingMode)); } } @@ -68,9 +74,14 @@ arm_compute::Status ClPadValidate(const TensorInfo& input, arm_compute::PaddingList padList = static_cast(reversed_PadList); - const arm_compute::Status aclStatus = arm_compute::CLPadLayer::validate(&aclInputInfo, - &aclOutputInfo, - padList); + // PixelValue is currently unused when validating, but it's required to pass in PaddingMode. + arm_compute::PixelValue pixelValue = GetPixelValue(&aclInputInfo, descriptor.m_PadValue); + const arm_compute::Status aclStatus = + arm_compute::CLPadLayer::validate(&aclInputInfo, + &aclOutputInfo, + padList, + pixelValue, + ConvertPaddingModeToAcl(descriptor.m_PaddingMode)); return aclStatus; } -- cgit v1.2.1