blob: f15306d1af85aa25380570b1551a9f4c82f0660b [file] [log] [blame]
Mohamed Nour Abouelseoud7420e552018-10-12 12:26:24 +01001//
2// Copyright © 2017 Arm Ltd. All rights reserved.
3// SPDX-License-Identifier: MIT
4//
5
6#include "RefPadWorkload.hpp"
7
8#include "Pad.hpp"
Mohamed Nour Abouelseoud7420e552018-10-12 12:26:24 +01009#include "Profiling.hpp"
Sadik Armagan041b3c02020-06-04 10:32:18 +010010#include "RefWorkloadUtils.hpp"
Mohamed Nour Abouelseoud7420e552018-10-12 12:26:24 +010011
12namespace armnn
13{
14
Sadik Armagan041b3c02020-06-04 10:32:18 +010015void RefPadWorkload::Execute() const
Mohamed Nour Abouelseoud7420e552018-10-12 12:26:24 +010016{
Finn Williamsb8181f72021-04-07 10:23:21 +010017 Execute(m_Data.m_Inputs, m_Data.m_Outputs);
18}
19
20void RefPadWorkload::ExecuteAsync(WorkingMemDescriptor &workingMemDescriptor)
21{
22 Execute(workingMemDescriptor.m_Inputs, workingMemDescriptor.m_Outputs);
23}
24
25void RefPadWorkload::Execute(std::vector<ITensorHandle*> inputs, std::vector<ITensorHandle*> outputs) const
26{
Mohamed Nour Abouelseoud7420e552018-10-12 12:26:24 +010027 ARMNN_SCOPED_PROFILING_EVENT(Compute::CpuRef, "RefPadWorkload_Execute");
28
Finn Williamsb8181f72021-04-07 10:23:21 +010029 const TensorInfo& inputInfo = GetTensorInfo(inputs[0]);
30 const TensorInfo& outputInfo = GetTensorInfo(outputs[0]);
Mohamed Nour Abouelseoud7420e552018-10-12 12:26:24 +010031
Sadik Armagan041b3c02020-06-04 10:32:18 +010032 armnn::Pad(inputInfo,
33 outputInfo,
Finn Williams01097942021-04-26 12:06:34 +010034 inputs[0],
35 outputs[0],
Sadik Armagan041b3c02020-06-04 10:32:18 +010036 m_Data);
Mohamed Nour Abouelseoud7420e552018-10-12 12:26:24 +010037}
38
Mohamed Nour Abouelseoud7420e552018-10-12 12:26:24 +010039} //namespace armnn