ArmNN
 21.02
RefResizeWorkload Class Reference

#include <RefResizeWorkload.hpp>

Inheritance diagram for RefResizeWorkload:
BaseWorkload< ResizeQueueDescriptor > IWorkload

Public Member Functions

virtual void Execute () const override
 
- Public Member Functions inherited from BaseWorkload< ResizeQueueDescriptor >
 BaseWorkload (const ResizeQueueDescriptor &descriptor, const WorkloadInfo &info)
 
void PostAllocationConfigure () override
 
const ResizeQueueDescriptorGetData () const
 
profiling::ProfilingGuid GetGuid () const final
 
- Public Member Functions inherited from IWorkload
virtual ~IWorkload ()
 
virtual void RegisterDebugCallback (const DebugCallbackFunction &)
 

Additional Inherited Members

- Protected Attributes inherited from BaseWorkload< ResizeQueueDescriptor >
const ResizeQueueDescriptor m_Data
 
const profiling::ProfilingGuid m_Guid
 

Detailed Description

Definition at line 14 of file RefResizeWorkload.hpp.

Member Function Documentation

◆ Execute()

void Execute ( ) const
overridevirtual

Implements IWorkload.

Definition at line 20 of file RefResizeWorkload.cpp.

References ARMNN_SCOPED_PROFILING_EVENT, armnn::CpuRef, armnn::GetTensorInfo(), ResizeDescriptor::m_AlignCorners, BaseWorkload< ResizeQueueDescriptor >::m_Data, ResizeDescriptor::m_DataLayout, ResizeDescriptor::m_HalfPixelCenters, QueueDescriptor::m_Inputs, ResizeDescriptor::m_Method, QueueDescriptor::m_Outputs, QueueDescriptorWithParameters< LayerDescriptor >::m_Parameters, and armnn::Resize.

21 {
22  ARMNN_SCOPED_PROFILING_EVENT(Compute::CpuRef, "RefResizeWorkload_Execute");
23 
24  const TensorInfo& inputInfo = GetTensorInfo(m_Data.m_Inputs[0]);
25  const TensorInfo& outputInfo = GetTensorInfo(m_Data.m_Outputs[0]);
26 
27  std::unique_ptr<Decoder<float>> decoderPtr = MakeDecoder<float>(inputInfo, m_Data.m_Inputs[0]->Map());
28  Decoder<float> &decoder = *decoderPtr;
29  std::unique_ptr<Encoder<float>> encoderPtr = MakeEncoder<float>(outputInfo, m_Data.m_Outputs[0]->Map());
30  Encoder<float> &encoder = *encoderPtr;
31 
32  Resize(decoder,
33  inputInfo,
34  encoder,
35  outputInfo,
40 }
CPU Execution: Reference C++ kernels.
const ResizeQueueDescriptor m_Data
Definition: Workload.hpp:46
ResizeMethod m_Method
The Interpolation method to use (Bilinear, NearestNeighbor).
#define ARMNN_SCOPED_PROFILING_EVENT(backendId, name)
Definition: Profiling.hpp:173
bool m_HalfPixelCenters
Half Pixel Centers.
bool m_AlignCorners
Aligned corners.
std::vector< ITensorHandle * > m_Outputs
std::vector< ITensorHandle * > m_Inputs
DataLayout m_DataLayout
The data layout to be used (NCHW, NHWC).
const TensorInfo & GetTensorInfo(const ITensorHandle *tensorHandle)
float32 helpers

The documentation for this class was generated from the following files: