ArmNN
 23.05
RefDepthwiseConvolution2dWorkload Class Reference

#include <RefDepthwiseConvolution2dWorkload.hpp>

Inheritance diagram for RefDepthwiseConvolution2dWorkload:
RefBaseWorkload< DepthwiseConvolution2dQueueDescriptor > BaseWorkload< DepthwiseConvolution2dQueueDescriptor > IWorkload

Public Member Functions

 RefDepthwiseConvolution2dWorkload (const DepthwiseConvolution2dQueueDescriptor &descriptor, const WorkloadInfo &info)
 
void Execute () const override
 
void ExecuteAsync (ExecutionData &executionData) override
 
- Public Member Functions inherited from RefBaseWorkload< DepthwiseConvolution2dQueueDescriptor >
 RefBaseWorkload (const DepthwiseConvolution2dQueueDescriptor &descriptor, const WorkloadInfo &info)
 
virtual bool SupportsTensorHandleReplacement () const override
 
void ReplaceInputTensorHandle (ITensorHandle *tensorHandle, unsigned int slot) override
 
void ReplaceOutputTensorHandle (ITensorHandle *tensorHandle, unsigned int slot) override
 
- Public Member Functions inherited from BaseWorkload< DepthwiseConvolution2dQueueDescriptor >
 BaseWorkload (const DepthwiseConvolution2dQueueDescriptor &descriptor, const WorkloadInfo &info)
 
void ExecuteAsync (ExecutionData &executionData) override
 
void PostAllocationConfigure () override
 
const DepthwiseConvolution2dQueueDescriptorGetData () const
 
arm::pipe::ProfilingGuid GetGuid () const final
 
- Public Member Functions inherited from IWorkload
virtual ~IWorkload ()
 
virtual arm::pipe::ProfilingGuid GetGuid () const =0
 
virtual bool SupportsTensorHandleReplacement () const =0
 
virtual void RegisterDebugCallback (const DebugCallbackFunction &)
 
virtual armnn::Optional< armnn::MemoryRequirementsGetMemoryRequirements ()
 

Additional Inherited Members

- Protected Attributes inherited from BaseWorkload< DepthwiseConvolution2dQueueDescriptor >
DepthwiseConvolution2dQueueDescriptor m_Data
 
const arm::pipe::ProfilingGuid m_Guid
 

Detailed Description

Definition at line 15 of file RefDepthwiseConvolution2dWorkload.hpp.

Constructor & Destructor Documentation

◆ RefDepthwiseConvolution2dWorkload()

RefDepthwiseConvolution2dWorkload ( const DepthwiseConvolution2dQueueDescriptor descriptor,
const WorkloadInfo info 
)
explicit

Definition at line 18 of file RefDepthwiseConvolution2dWorkload.cpp.

20  : RefBaseWorkload<DepthwiseConvolution2dQueueDescriptor>(descriptor, info)
21 {
22  WorkloadInfo detailsInfo;
23  detailsInfo.m_InputTensorInfos = info.m_InputTensorInfos;
24  detailsInfo.m_OutputTensorInfos = info.m_OutputTensorInfos;
25  detailsInfo.m_WeightsTensorInfo = armnn::Optional<armnn::TensorInfo>(info.m_InputTensorInfos[1]);
26 
27  if (descriptor.m_Parameters.m_BiasEnabled)
28  {
29  detailsInfo.m_BiasTensorInfo = armnn::Optional<armnn::TensorInfo>(info.m_InputTensorInfos[2]);
30  }
31 
32  // Report Profiling Details
33  ARMNN_REPORT_PROFILING_WORKLOAD_DESC("RefDepthwiseConvolution2dWorkload_Construct",
34  descriptor.m_Parameters,
35  detailsInfo,
36  this->GetGuid());
37 }

References ARMNN_REPORT_PROFILING_WORKLOAD_DESC, armnn::info, DepthwiseConvolution2dDescriptor::m_BiasEnabled, WorkloadInfo::m_BiasTensorInfo, WorkloadInfo::m_InputTensorInfos, WorkloadInfo::m_OutputTensorInfos, QueueDescriptorWithParameters< LayerDescriptor >::m_Parameters, and WorkloadInfo::m_WeightsTensorInfo.

Member Function Documentation

◆ Execute()

◆ ExecuteAsync()

void ExecuteAsync ( ExecutionData executionData)
overridevirtual

Implements IWorkload.

Definition at line 44 of file RefDepthwiseConvolution2dWorkload.cpp.

45 {
46  WorkingMemDescriptor* workingMemDescriptor = static_cast<WorkingMemDescriptor*>(executionData.m_Data);
47  Execute(workingMemDescriptor->m_Inputs, workingMemDescriptor->m_Outputs);
48 }

References RefDepthwiseConvolution2dWorkload::Execute(), ExecutionData::m_Data, WorkingMemDescriptor::m_Inputs, and WorkingMemDescriptor::m_Outputs.


The documentation for this class was generated from the following files:
armnn::BaseWorkload< DepthwiseConvolution2dQueueDescriptor >::m_Data
DepthwiseConvolution2dQueueDescriptor m_Data
Definition: Workload.hpp:83
armnn::RefDepthwiseConvolution2dWorkload::Execute
void Execute() const override
Definition: RefDepthwiseConvolution2dWorkload.cpp:39
ARMNN_REPORT_PROFILING_WORKLOAD_DESC
#define ARMNN_REPORT_PROFILING_WORKLOAD_DESC(name, desc, infos, guid)
Definition: Profiling.hpp:227
armnn::Optional< armnn::TensorInfo >
armnn::QueueDescriptor::m_Outputs
std::vector< ITensorHandle * > m_Outputs
Definition: WorkloadData.hpp:27
armnn::QueueDescriptor::m_Inputs
std::vector< ITensorHandle * > m_Inputs
Definition: WorkloadData.hpp:26
armnn::BoostLogSeverityMapping::info
@ info