ArmNN
 23.08
RefConvolution3dWorkload Class Reference

#include <RefConvolution3dWorkload.hpp>

Inheritance diagram for RefConvolution3dWorkload:
[legend]
Collaboration diagram for RefConvolution3dWorkload:
[legend]

Public Member Functions

 RefConvolution3dWorkload (const Convolution3dQueueDescriptor &descriptor, const WorkloadInfo &info)
 
void Execute () const override
 
void ExecuteAsync (ExecutionData &executionData) override
 
- Public Member Functions inherited from RefBaseWorkload< Convolution3dQueueDescriptor >
 RefBaseWorkload (const Convolution3dQueueDescriptor &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< Convolution3dQueueDescriptor >
 BaseWorkload (const Convolution3dQueueDescriptor &descriptor, const WorkloadInfo &info)
 
virtual const std::string & GetName () const override
 
void ExecuteAsync (ExecutionData &executionData) override
 
void PostAllocationConfigure () override
 
const Convolution3dQueueDescriptorGetData () 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 const std::string & GetName () const =0
 
virtual void RegisterDebugCallback (const DebugCallbackFunction &)
 
virtual armnn::Optional< armnn::MemoryRequirementsGetMemoryRequirements ()
 

Additional Inherited Members

- Protected Attributes inherited from BaseWorkload< Convolution3dQueueDescriptor >
Convolution3dQueueDescriptor m_Data
 
const arm::pipe::ProfilingGuid m_Guid
 
const std::string m_Name
 

Detailed Description

Definition at line 16 of file RefConvolution3dWorkload.hpp.

Constructor & Destructor Documentation

◆ RefConvolution3dWorkload()

RefConvolution3dWorkload ( const Convolution3dQueueDescriptor descriptor,
const WorkloadInfo info 
)
explicit

Definition at line 15 of file RefConvolution3dWorkload.cpp.

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

References ARMNN_REPORT_PROFILING_WORKLOAD_DESC, armnn::info, Convolution3dDescriptor::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 40 of file RefConvolution3dWorkload.cpp.

41 {
42  WorkingMemDescriptor* workingMemDescriptor = static_cast<WorkingMemDescriptor*>(executionData.m_Data);
43  Execute(workingMemDescriptor->m_Inputs, workingMemDescriptor->m_Outputs);
44 }

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


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