From fd627ffaec8fd8801d980b4c91ee7c0607ab6aaf Mon Sep 17 00:00:00 2001 From: Jan Eilers Date: Thu, 25 Feb 2021 17:44:00 +0000 Subject: IVGCVSW-5687 Update Doxygen Docu * Update Doxygen Documentation for 21.02 release Signed-off-by: Jan Eilers Change-Id: I9ed2f9caab038836ea99d7b378d7899fe431a4e5 --- ...nn_1_1_neon_convert_fp32_to_fp16_workload.xhtml | 242 +++++++++++++++++++++ 1 file changed, 242 insertions(+) create mode 100644 21.02/classarmnn_1_1_neon_convert_fp32_to_fp16_workload.xhtml (limited to '21.02/classarmnn_1_1_neon_convert_fp32_to_fp16_workload.xhtml') diff --git a/21.02/classarmnn_1_1_neon_convert_fp32_to_fp16_workload.xhtml b/21.02/classarmnn_1_1_neon_convert_fp32_to_fp16_workload.xhtml new file mode 100644 index 0000000000..ce4f300bc1 --- /dev/null +++ b/21.02/classarmnn_1_1_neon_convert_fp32_to_fp16_workload.xhtml @@ -0,0 +1,242 @@ + + + + + + + + + + + + + +ArmNN: NeonConvertFp32ToFp16Workload Class Reference + + + + + + + + + + + + + + + + +
+
+ + + + ArmNN + + + +
+
+  21.02 +
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+ +
+
NeonConvertFp32ToFp16Workload Class Reference
+
+
+ +

#include <NeonConvertFp32ToFp16Workload.hpp>

+
+Inheritance diagram for NeonConvertFp32ToFp16Workload:
+
+
+ + +MultiTypedWorkload< QueueDescriptor, InputDataType, OutputDataType > +BaseWorkload< QueueDescriptor > +IWorkload + +
+ + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 NeonConvertFp32ToFp16Workload (const ConvertFp32ToFp16QueueDescriptor &descriptor, const WorkloadInfo &info)
 
virtual void Execute () const override
 
- Public Member Functions inherited from MultiTypedWorkload< QueueDescriptor, InputDataType, OutputDataType >
 MultiTypedWorkload (const QueueDescriptor &descriptor, const WorkloadInfo &info)
 
- Public Member Functions inherited from BaseWorkload< QueueDescriptor >
 BaseWorkload (const QueueDescriptor &descriptor, const WorkloadInfo &info)
 
void PostAllocationConfigure () override
 
const QueueDescriptorGetData () 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< QueueDescriptor >
const QueueDescriptor m_Data
 
const profiling::ProfilingGuid m_Guid
 
+

Detailed Description

+
+

Definition at line 15 of file NeonConvertFp32ToFp16Workload.hpp.

+

Constructor & Destructor Documentation

+ +

◆ NeonConvertFp32ToFp16Workload()

+ +
+
+ + + + + + + + + + + + + + + + + + +
NeonConvertFp32ToFp16Workload (const ConvertFp32ToFp16QueueDescriptordescriptor,
const WorkloadInfoinfo 
)
+
+ +

Definition at line 18 of file NeonConvertFp32ToFp16Workload.cpp.

+ +

References armnn::GatherTensorHandlePairs(), BaseWorkload< QueueDescriptor >::m_Data, and QueueDescriptor::ValidateInputsOutputs().

+
20  : Float32ToFloat16Workload<ConvertFp32ToFp16QueueDescriptor>(descriptor, info)
21 {
22  this->m_Data.ValidateInputsOutputs("NeonConvertFp32ToFp16Workload", 1, 1);
23  GatherTensorHandlePairs(descriptor, m_TensorHandlePairs);
24 }
const QueueDescriptor m_Data
Definition: Workload.hpp:46
+
void ValidateInputsOutputs(const std::string &descName, unsigned int numExpectedIn, unsigned int numExpectedOut) const
+ +
void GatherTensorHandlePairs(const DescriptorType &descriptor, std::vector< std::pair< SrcTensorHandleType *, DstTensorHandleType *>> &tensorHandlePairs)
+
+
+
+

Member Function Documentation

+ +

◆ Execute()

+ +
+
+ + + + + +
+ + + + + + + +
void Execute () const
+
+overridevirtual
+
+ +

Implements IWorkload.

+ +

Definition at line 26 of file NeonConvertFp32ToFp16Workload.cpp.

+ +

References ARMNN_SCOPED_PROFILING_EVENT_NEON, FloatingPointConverter::ConvertFloat32To16(), and armnn::CopyTensorContentsGeneric().

+
27 {
28  ARMNN_SCOPED_PROFILING_EVENT_NEON("NeonConvertFp32ToFp16Workload_Execute");
29 
30  auto convertFunc = [](uint8_t* dst, const uint8_t* src, size_t size)
31  {
32  auto input = reinterpret_cast<const float*>(src);
33  auto output = reinterpret_cast<Half*>(dst);
34  size_t numElements = size/2; // 2 bytes per fp16
36  };
37 
38  for (const auto& pair : m_TensorHandlePairs)
39  {
40  CopyTensorContentsGeneric(pair.first, pair.second, convertFunc);
41  }
42 }
#define ARMNN_SCOPED_PROFILING_EVENT_NEON(name)
+
static void ConvertFloat32To16(const float *srcFloat32Buffer, size_t numElements, void *dstFloat16Buffer)
Converts a buffer of FP32 values to FP16, and stores in the given dstFloat16Buffer.
+
void CopyTensorContentsGeneric(const ITensorHandle *srcTensor, ITensorHandle *dstTensor, CopyFunc copy)
+
half_float::half Half
Definition: Half.hpp:16
+
+
+
+
The documentation for this class was generated from the following files: +
+
+ + + + -- cgit v1.2.1