ArmNN
 25.11
Loading...
Searching...
No Matches
SampleDynamicAdditionWorkload Class Reference

#include <SampleDynamicAdditionWorkload.hpp>

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

Public Member Functions

 SampleDynamicAdditionWorkload (const armnn::AdditionQueueDescriptor &descriptor, const armnn::WorkloadInfo &info)
void Execute () const override
Public Member Functions inherited from BaseWorkload< armnn::AdditionQueueDescriptor >
 BaseWorkload (const armnn::AdditionQueueDescriptor &descriptor, const WorkloadInfo &info)
virtual const std::string & GetName () const override
void PostAllocationConfigure () override
const armnn::AdditionQueueDescriptorGetData () const
arm::pipe::ProfilingGuid GetGuid () const final
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 IWorkload
virtual ~IWorkload ()
virtual void RegisterDebugCallback (const DebugCallbackFunction &)
virtual armnn::Optional< armnn::MemoryRequirementsGetMemoryRequirements ()

Additional Inherited Members

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

Detailed Description

Definition at line 13 of file SampleDynamicAdditionWorkload.hpp.

Constructor & Destructor Documentation

◆ SampleDynamicAdditionWorkload()

Definition at line 34 of file SampleDynamicAdditionWorkload.cpp.

36 : BaseWorkload(descriptor, info)
37{}

References BaseWorkload< armnn::AdditionQueueDescriptor >::BaseWorkload().

Member Function Documentation

◆ Execute()

void Execute ( ) const
overridevirtual

Implements IWorkload.

Definition at line 39 of file SampleDynamicAdditionWorkload.cpp.

40{
41 const armnn::TensorInfo& info = GetTensorInfo(m_Data.m_Inputs[0]);
42 unsigned int num = info.GetNumElements();
43
44 const float* inputData0 = GetInputTensorData(0, m_Data);
45 const float* inputData1 = GetInputTensorData(1, m_Data);
46 float* outputData = GetOutputTensorData(0, m_Data);
47
48 for (unsigned int i = 0; i < num; ++i)
49 {
50 outputData[i] = inputData0[i] + inputData1[i];
51 }
52}
const DataType * GetInputTensorData(unsigned int idx, const PayloadType &data)
DataType * GetOutputTensorData(unsigned int idx, const PayloadType &data)
armnn::TensorInfo GetTensorInfo(unsigned int numberOfBatches, unsigned int numberOfChannels, unsigned int height, unsigned int width, const armnn::DataLayout dataLayout, const armnn::DataType dataType)

References sdb::GetInputTensorData(), sdb::GetOutputTensorData(), sdb::GetTensorInfo(), and BaseWorkload< armnn::AdditionQueueDescriptor >::m_Data.


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