ArmNN
 23.05
BatchNormalizationQueueDescriptor Struct Reference

#include <WorkloadData.hpp>

Inheritance diagram for BatchNormalizationQueueDescriptor:
QueueDescriptorWithParameters< BatchNormalizationDescriptor > QueueDescriptor

Public Member Functions

 BatchNormalizationQueueDescriptor ()
 
void Validate (const WorkloadInfo &workloadInfo) const
 
- Public Member Functions inherited from QueueDescriptorWithParameters< BatchNormalizationDescriptor >
virtual ~QueueDescriptorWithParameters ()=default
 
- Public Member Functions inherited from QueueDescriptor
virtual ~QueueDescriptor ()=default
 
void ValidateTensorNumDimensions (const TensorInfo &tensor, std::string const &descName, unsigned int numDimensions, std::string const &tensorName) const
 
void ValidateTensorNumDimNumElem (const TensorInfo &tensorInfo, unsigned int numDimension, unsigned int numElements, std::string const &tensorName) const
 
void ValidateInputsOutputs (const std::string &descName, unsigned int numExpectedIn, unsigned int numExpectedOut) const
 
template<typename T >
const T * GetAdditionalInformation () const
 

Public Attributes

const ConstTensorHandlem_Mean
 
const ConstTensorHandlem_Variance
 
const ConstTensorHandlem_Beta
 
const ConstTensorHandlem_Gamma
 
- Public Attributes inherited from QueueDescriptorWithParameters< BatchNormalizationDescriptor >
BatchNormalizationDescriptor m_Parameters
 
- Public Attributes inherited from QueueDescriptor
std::vector< ITensorHandle * > m_Inputs
 
std::vector< ITensorHandle * > m_Outputs
 
void * m_AdditionalInfoObject
 
bool m_AllowExpandedDims = false
 

Additional Inherited Members

- Protected Member Functions inherited from QueueDescriptorWithParameters< BatchNormalizationDescriptor >
 QueueDescriptorWithParameters ()=default
 
 QueueDescriptorWithParameters (QueueDescriptorWithParameters const &)=default
 
QueueDescriptorWithParametersoperator= (QueueDescriptorWithParameters const &)=default
 
- Protected Member Functions inherited from QueueDescriptor
 QueueDescriptor ()
 
 QueueDescriptor (QueueDescriptor const &)=default
 
QueueDescriptoroperator= (QueueDescriptor const &)=default
 

Detailed Description

Definition at line 306 of file WorkloadData.hpp.

Constructor & Destructor Documentation

◆ BatchNormalizationQueueDescriptor()

Definition at line 308 of file WorkloadData.hpp.

309  : m_Mean(nullptr)
310  , m_Variance(nullptr)
311  , m_Beta(nullptr)
312  , m_Gamma(nullptr)
313  {
314  }

Member Function Documentation

◆ Validate()

void Validate ( const WorkloadInfo workloadInfo) const

Definition at line 1224 of file WorkloadData.cpp.

1225 {
1226  const std::string descriptorName{"BatchNormalizationQueueDescriptor"};
1227 
1228  ValidateNumInputs(workloadInfo, descriptorName, 1);
1229  ValidateNumOutputs(workloadInfo, descriptorName, 1);
1230 
1231  const TensorInfo& inputTensorInfo = workloadInfo.m_InputTensorInfos[0];
1232  const TensorInfo& outputTensorInfo = workloadInfo.m_OutputTensorInfos[0];
1233 
1234  std::vector<DataType> supportedTypes =
1235  {
1242  };
1243 
1244  ValidateDataTypes(inputTensorInfo, supportedTypes, descriptorName);
1245  ValidateDataTypes(outputTensorInfo, supportedTypes, descriptorName);
1246 
1247  ValidateTensorDataTypesMatch(inputTensorInfo, outputTensorInfo, descriptorName, "input", "output");
1248  ValidateTensorShapesMatch(inputTensorInfo, outputTensorInfo, descriptorName, "input", "output");
1249 
1250  ValidatePointer(m_Mean, descriptorName, "mean");
1251  ValidatePointer(m_Variance, descriptorName, "variance");
1252  ValidatePointer(m_Beta, descriptorName, "beta");
1253  ValidatePointer(m_Gamma, descriptorName, "gamma");
1254 
1255  const TensorInfo& mean = m_Mean->GetTensorInfo();
1256  const TensorInfo& variance = m_Variance->GetTensorInfo();
1257  const TensorInfo& beta = m_Beta->GetTensorInfo();
1258  const TensorInfo& gamma = m_Gamma->GetTensorInfo();
1259 
1260  ValidateTensorNumDimensions(mean, descriptorName, 1, "mean");
1261  ValidateTensorNumDimensions(variance, descriptorName, 1, "variance");
1262  ValidateTensorNumDimensions(beta, descriptorName, 1, "beta");
1263  ValidateTensorNumDimensions(gamma, descriptorName, 1, "gamma");
1264 
1265  ValidateTensorShapesMatch(mean, variance, descriptorName, "mean", "variance");
1266  ValidateTensorShapesMatch(mean, beta, descriptorName, "mean", "beta");
1267  ValidateTensorShapesMatch(mean, gamma, descriptorName, "mean", "gamma");
1268 }

References armnn::BFloat16, armnn::Float16, armnn::Float32, ConstTensorHandle::GetTensorInfo(), BatchNormalizationQueueDescriptor::m_Beta, BatchNormalizationQueueDescriptor::m_Gamma, WorkloadInfo::m_InputTensorInfos, BatchNormalizationQueueDescriptor::m_Mean, WorkloadInfo::m_OutputTensorInfos, BatchNormalizationQueueDescriptor::m_Variance, armnn::QAsymmS8, armnn::QAsymmU8, armnn::QSymmS16, and QueueDescriptor::ValidateTensorNumDimensions().

Member Data Documentation

◆ m_Beta

◆ m_Gamma

◆ m_Mean

◆ m_Variance


The documentation for this struct was generated from the following files:
armnn::BatchNormalizationQueueDescriptor::m_Variance
const ConstTensorHandle * m_Variance
Definition: WorkloadData.hpp:317
armnn::DataType::QAsymmU8
@ QAsymmU8
armnn::BatchNormalizationQueueDescriptor::m_Beta
const ConstTensorHandle * m_Beta
Definition: WorkloadData.hpp:318
armnn::DataType::Float16
@ Float16
armnn::DataType::QAsymmS8
@ QAsymmS8
armnn::BatchNormalizationQueueDescriptor::m_Gamma
const ConstTensorHandle * m_Gamma
Definition: WorkloadData.hpp:319
armnn::WorkloadInfo::m_OutputTensorInfos
std::vector< TensorInfo > m_OutputTensorInfos
Definition: WorkloadInfo.hpp:19
armnn::QueueDescriptor::ValidateTensorNumDimensions
void ValidateTensorNumDimensions(const TensorInfo &tensor, std::string const &descName, unsigned int numDimensions, std::string const &tensorName) const
Definition: WorkloadData.cpp:423
armnn::DataType::Float32
@ Float32
armnn::BatchNormalizationQueueDescriptor::m_Mean
const ConstTensorHandle * m_Mean
Definition: WorkloadData.hpp:316
armnn::TensorInfo
Definition: Tensor.hpp:152
armnn::ConstTensorHandle::GetTensorInfo
const TensorInfo & GetTensorInfo() const
Definition: TensorHandle.hpp:40
armnn::DataType::BFloat16
@ BFloat16
armnn::DataType::QSymmS16
@ QSymmS16
armnn::WorkloadInfo::m_InputTensorInfos
std::vector< TensorInfo > m_InputTensorInfos
Definition: WorkloadInfo.hpp:18