ArmNN
 20.11
RefConstantWorkload Class Reference

#include <RefConstantWorkload.hpp>

Inheritance diagram for RefConstantWorkload:
BaseWorkload< ConstantQueueDescriptor > IWorkload

Public Member Functions

 RefConstantWorkload (const ConstantQueueDescriptor &descriptor, const WorkloadInfo &info)
 
void PostAllocationConfigure () override
 
virtual void Execute () const override
 
- Public Member Functions inherited from BaseWorkload< ConstantQueueDescriptor >
 BaseWorkload (const ConstantQueueDescriptor &descriptor, const WorkloadInfo &info)
 
void PostAllocationConfigure () override
 
const ConstantQueueDescriptorGetData () 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< ConstantQueueDescriptor >
const ConstantQueueDescriptor m_Data
 
const profiling::ProfilingGuid m_Guid
 

Detailed Description

Definition at line 17 of file RefConstantWorkload.hpp.

Constructor & Destructor Documentation

◆ RefConstantWorkload()

RefConstantWorkload ( const ConstantQueueDescriptor descriptor,
const WorkloadInfo info 
)

Definition at line 19 of file RefConstantWorkload.cpp.

21  : BaseWorkload<ConstantQueueDescriptor>(descriptor, info) {}

Member Function Documentation

◆ Execute()

void Execute ( ) const
overridevirtual

Implements IWorkload.

Definition at line 36 of file RefConstantWorkload.cpp.

References ARMNN_SCOPED_PROFILING_EVENT, and armnn::CpuRef.

37 {
38  ARMNN_SCOPED_PROFILING_EVENT(Compute::CpuRef, "RefConstantWorkload_Execute");
39 }
CPU Execution: Reference C++ kernels.
#define ARMNN_SCOPED_PROFILING_EVENT(backendId, name)
Definition: Profiling.hpp:175

◆ PostAllocationConfigure()

void PostAllocationConfigure ( )
overridevirtual

Implements IWorkload.

Definition at line 23 of file RefConstantWorkload.cpp.

References ARMNN_ASSERT, ConstCpuTensorHandle::GetConstTensor(), TensorInfo::GetNumBytes(), armnn::GetTensorInfo(), ConstCpuTensorHandle::GetTensorInfo(), BaseWorkload< ConstantQueueDescriptor >::m_Data, ConstantQueueDescriptor::m_LayerOutput, and QueueDescriptor::m_Outputs.

24 {
25  const ConstantQueueDescriptor& data = this->m_Data;
26 
27  ARMNN_ASSERT(data.m_LayerOutput != nullptr);
28 
29  const TensorInfo& outputInfo = GetTensorInfo(data.m_Outputs[0]);
30  ARMNN_ASSERT(data.m_LayerOutput->GetTensorInfo().GetNumBytes() == outputInfo.GetNumBytes());
31 
32  memcpy(GetOutputTensorData<void>(0, data), data.m_LayerOutput->GetConstTensor<void>(),
33  outputInfo.GetNumBytes());
34 }
const ConstantQueueDescriptor m_Data
Definition: Workload.hpp:46
#define ARMNN_ASSERT(COND)
Definition: Assert.hpp:14
const TensorInfo & GetTensorInfo(const ITensorHandle *tensorHandle)
float32 helpers

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