11 #include <arm_compute/core/Types.h>
12 #include <arm_compute/runtime/NEON/functions/NEPadLayer.h>
18 using namespace armcomputetensorutils;
34 std::vector<std::pair<unsigned int, unsigned int>> reversed_PadList(descriptor.
m_Parameters.
m_PadList.size());
38 std::begin(reversed_PadList));
40 arm_compute::PaddingList padList =
static_cast<arm_compute::PaddingList
>(reversed_PadList);
44 auto layer = std::make_unique<arm_compute::NEPadLayer>();
45 layer->configure(&input,
50 m_Layer.reset(layer.release());
63 const arm_compute::TensorInfo aclInputInfo = BuildArmComputeTensorInfo(input);
64 const arm_compute::TensorInfo aclOutputInfo = BuildArmComputeTensorInfo(output);
66 std::vector<std::pair<unsigned int, unsigned int>> reversed_PadList(descriptor.
m_PadList.size());
68 std::reverse_copy(std::begin(descriptor.
m_PadList),
70 std::begin(reversed_PadList));
72 arm_compute::PaddingList padList =
static_cast<arm_compute::PaddingList
>(reversed_PadList);
75 arm_compute::PixelValue pixelValue = GetPixelValue(&aclInputInfo, descriptor.
m_PadValue);
76 return arm_compute::NEPadLayer::validate(&aclInputInfo,
#define ARMNN_SCOPED_PROFILING_EVENT_NEON_NAME_GUID(label)
Creates a profiling event that uses GetGuid() and GetName() from the calling class.
#define ARMNN_REPORT_PROFILING_WORKLOAD_DESC(name, desc, infos, guid)
NeonPadWorkload(const PadQueueDescriptor &descriptor, const WorkloadInfo &info)
void Execute() const override
Copyright (c) 2021 ARM Limited and Contributors.
arm_compute::Status NeonPadWorkloadValidate(const TensorInfo &input, const TensorInfo &output, const PadDescriptor &descriptor)
arm_compute::PaddingMode ConvertPaddingModeToAcl(const PaddingMode &paddingMode)
A PadDescriptor for the PadLayer.
float m_PadValue
Optional value to use for padding, defaults to 0.
PaddingMode m_PaddingMode
Specifies the Padding mode (Constant, Reflect or Symmetric)
std::vector< std::pair< unsigned int, unsigned int > > m_PadList
Specifies the padding for input dimension.
std::vector< ITensorHandle * > m_Inputs
std::vector< ITensorHandle * > m_Outputs
void ValidateInputsOutputs(const std::string &descName, unsigned int numExpectedIn, unsigned int numExpectedOut) const
LayerDescriptor m_Parameters
Contains information about TensorInfos of a layer.