ArmNN
 25.11
Loading...
Searching...
No Matches
TransposeConvolution2dQueueDescriptor Struct Reference

#include <WorkloadData.hpp>

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

Public Member Functions

 TransposeConvolution2dQueueDescriptor ()
void Validate (const WorkloadInfo &workloadInfo) const
Public Member Functions inherited from QueueDescriptorWithParameters< TransposeConvolution2dDescriptor >
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_Weight
const ConstTensorHandlem_Bias
Public Attributes inherited from QueueDescriptorWithParameters< TransposeConvolution2dDescriptor >
TransposeConvolution2dDescriptor 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< TransposeConvolution2dDescriptor >
 QueueDescriptorWithParameters ()=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 544 of file WorkloadData.hpp.

Constructor & Destructor Documentation

◆ TransposeConvolution2dQueueDescriptor()

Definition at line 546 of file WorkloadData.hpp.

546 :
547 m_Weight(nullptr),
548 m_Bias(nullptr)
549 {}

References m_Bias, and m_Weight.

Member Function Documentation

◆ Validate()

void Validate ( const WorkloadInfo & workloadInfo) const

Definition at line 3066 of file WorkloadData.cpp.

3067{
3068 const std::string descriptorName{"TransposeConvolution2dQueueDescriptor"};
3069
3070 ValidateNumInputs(workloadInfo, descriptorName, 1);
3071 ValidateNumOutputs(workloadInfo, descriptorName, 1);
3072
3073 const TensorInfo& inputTensorInfo = workloadInfo.m_InputTensorInfos[0];
3074 const TensorInfo& outputTensorInfo = workloadInfo.m_OutputTensorInfos[0];
3075
3076 ValidateTensorNumDimensions(inputTensorInfo, descriptorName, 4, "input");
3077 ValidateTensorNumDimensions(outputTensorInfo, descriptorName, 4, "output");
3078
3079 ValidatePointer(m_Weight, descriptorName, "weight");
3080
3081 const TensorInfo& weightTensorInfo = m_Weight->GetTensorInfo();
3082 ValidateTensorNumDimensions(weightTensorInfo, descriptorName, 4, "weight");
3083
3084 ValidateWeightDataType(inputTensorInfo, weightTensorInfo, descriptorName);
3085
3086 Optional<TensorInfo> optionalBiasTensorInfo;
3088 {
3089 ValidatePointer(m_Bias, descriptorName, "bias");
3090
3091 optionalBiasTensorInfo = MakeOptional<TensorInfo>(m_Bias->GetTensorInfo());
3092 const TensorInfo& biasTensorInfo = optionalBiasTensorInfo.value();
3093
3094 ValidateTensorDataType(biasTensorInfo, GetBiasDataType(inputTensorInfo.GetDataType()), descriptorName, "bias");
3095 ValidateBiasTensorQuantization(biasTensorInfo, weightTensorInfo, descriptorName);
3096 }
3097
3098 ValidatePerAxisQuantization(inputTensorInfo,
3099 outputTensorInfo,
3100 weightTensorInfo,
3101 optionalBiasTensorInfo,
3102 descriptorName);
3103
3104 std::vector<DataType> supportedTypes =
3105 {
3112 };
3113
3114 ValidateDataTypes(inputTensorInfo, supportedTypes, descriptorName);
3115 ValidateTensorDataTypesMatch(inputTensorInfo, outputTensorInfo, descriptorName, "input", "output");
3116}
DataType GetDataType() const
Definition Tensor.hpp:200
Optional< T > MakeOptional(Args &&... args)
Utility template that constructs an object of type T in-place and wraps it inside an Optional<T> obje...
Definition Optional.hpp:305
DataType GetBiasDataType(DataType inputDataType)
void ValidateTensorNumDimensions(const TensorInfo &tensor, std::string const &descName, unsigned int numDimensions, std::string const &tensorName) const
std::vector< TensorInfo > m_OutputTensorInfos
std::vector< TensorInfo > m_InputTensorInfos

References armnn::BFloat16, armnn::Float16, armnn::Float32, armnn::GetBiasDataType(), TensorInfo::GetDataType(), m_Bias, WorkloadInfo::m_InputTensorInfos, WorkloadInfo::m_OutputTensorInfos, QueueDescriptorWithParameters< TransposeConvolution2dDescriptor >::m_Parameters, m_Weight, armnn::MakeOptional(), armnn::QAsymmS8, armnn::QAsymmU8, armnn::QSymmS16, QueueDescriptor::ValidateTensorNumDimensions(), and OptionalReferenceSwitch< IsReference, T >::value().

Member Data Documentation

◆ m_Bias

◆ m_Weight


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