ArmNN
 21.02
QLstmQueueDescriptor Struct Reference

#include <WorkloadData.hpp>

Inheritance diagram for QLstmQueueDescriptor:
QueueDescriptorWithParameters< QLstmDescriptor > QueueDescriptor

Public Member Functions

 QLstmQueueDescriptor ()
 
void Validate (const WorkloadInfo &workloadInfo) const
 
- Public Member Functions inherited from QueueDescriptor
void ValidateInputsOutputs (const std::string &descName, unsigned int numExpectedIn, unsigned int numExpectedOut) const
 
template<typename T >
const T * GetAdditionalInformation () const
 

Public Attributes

const ConstCpuTensorHandlem_InputToInputWeights
 
const ConstCpuTensorHandlem_InputToForgetWeights
 
const ConstCpuTensorHandlem_InputToCellWeights
 
const ConstCpuTensorHandlem_InputToOutputWeights
 
const ConstCpuTensorHandlem_RecurrentToInputWeights
 
const ConstCpuTensorHandlem_RecurrentToForgetWeights
 
const ConstCpuTensorHandlem_RecurrentToCellWeights
 
const ConstCpuTensorHandlem_RecurrentToOutputWeights
 
const ConstCpuTensorHandlem_CellToInputWeights
 
const ConstCpuTensorHandlem_CellToForgetWeights
 
const ConstCpuTensorHandlem_CellToOutputWeights
 
const ConstCpuTensorHandlem_InputGateBias
 
const ConstCpuTensorHandlem_ForgetGateBias
 
const ConstCpuTensorHandlem_CellBias
 
const ConstCpuTensorHandlem_OutputGateBias
 
const ConstCpuTensorHandlem_ProjectionWeights
 
const ConstCpuTensorHandlem_ProjectionBias
 
const ConstCpuTensorHandlem_InputLayerNormWeights
 
const ConstCpuTensorHandlem_ForgetLayerNormWeights
 
const ConstCpuTensorHandlem_CellLayerNormWeights
 
const ConstCpuTensorHandlem_OutputLayerNormWeights
 
- Public Attributes inherited from QueueDescriptorWithParameters< QLstmDescriptor >
QLstmDescriptor m_Parameters
 
- Public Attributes inherited from QueueDescriptor
std::vector< ITensorHandle * > m_Inputs
 
std::vector< ITensorHandle * > m_Outputs
 
void * m_AdditionalInfoObject
 

Additional Inherited Members

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

Detailed Description

Definition at line 552 of file WorkloadData.hpp.

Constructor & Destructor Documentation

◆ QLstmQueueDescriptor()

Definition at line 554 of file WorkloadData.hpp.

555  : m_InputToInputWeights(nullptr)
556  , m_InputToForgetWeights(nullptr)
557  , m_InputToCellWeights(nullptr)
558  , m_InputToOutputWeights(nullptr)
559  , m_RecurrentToInputWeights(nullptr)
560  , m_RecurrentToForgetWeights(nullptr)
561  , m_RecurrentToCellWeights(nullptr)
562  , m_RecurrentToOutputWeights(nullptr)
563  , m_CellToInputWeights(nullptr)
564  , m_CellToForgetWeights(nullptr)
565  , m_CellToOutputWeights(nullptr)
566  , m_InputGateBias(nullptr)
567  , m_ForgetGateBias(nullptr)
568  , m_CellBias(nullptr)
569  , m_OutputGateBias(nullptr)
570  , m_ProjectionWeights(nullptr)
571  , m_ProjectionBias(nullptr)
572  , m_InputLayerNormWeights(nullptr)
573  , m_ForgetLayerNormWeights(nullptr)
574  , m_CellLayerNormWeights(nullptr)
575  , m_OutputLayerNormWeights(nullptr)
576  {
577  }
const ConstCpuTensorHandle * m_CellToForgetWeights
const ConstCpuTensorHandle * m_ProjectionWeights
const ConstCpuTensorHandle * m_ProjectionBias
const ConstCpuTensorHandle * m_ForgetLayerNormWeights
const ConstCpuTensorHandle * m_CellLayerNormWeights
const ConstCpuTensorHandle * m_RecurrentToCellWeights
const ConstCpuTensorHandle * m_RecurrentToInputWeights
const ConstCpuTensorHandle * m_OutputGateBias
const ConstCpuTensorHandle * m_CellBias
const ConstCpuTensorHandle * m_CellToOutputWeights
const ConstCpuTensorHandle * m_OutputLayerNormWeights
const ConstCpuTensorHandle * m_InputToForgetWeights
const ConstCpuTensorHandle * m_CellToInputWeights
const ConstCpuTensorHandle * m_RecurrentToOutputWeights
const ConstCpuTensorHandle * m_InputGateBias
const ConstCpuTensorHandle * m_InputLayerNormWeights
const ConstCpuTensorHandle * m_RecurrentToForgetWeights
const ConstCpuTensorHandle * m_ForgetGateBias
const ConstCpuTensorHandle * m_InputToOutputWeights
const ConstCpuTensorHandle * m_InputToInputWeights
const ConstCpuTensorHandle * m_InputToCellWeights

Member Function Documentation

◆ Validate()

void Validate ( const WorkloadInfo workloadInfo) const

Definition at line 2916 of file WorkloadData.cpp.

References WorkloadInfo::m_InputTensorInfos, WorkloadInfo::m_OutputTensorInfos, armnn::QAsymmS8, armnn::QSymmS16, armnn::QSymmS8, and armnn::Signed32.

2917 {
2918  const std::string descriptorName{"QLstmQueueDescriptor"};
2919 
2920  // Validate number of inputs/outputs
2921  ValidateNumInputs(workloadInfo, descriptorName, 3);
2922  ValidateNumOutputs(workloadInfo, descriptorName, 3);
2923 
2924  // Input/output tensor info
2925  auto inputInfo = workloadInfo.m_InputTensorInfos[0];
2926  auto outputStateInInfo = workloadInfo.m_InputTensorInfos[1];
2927  auto cellStateInInfo = workloadInfo.m_InputTensorInfos[2];
2928 
2929  auto outputStateOutInfo = workloadInfo.m_OutputTensorInfos[0];
2930  auto cellStateOutInfo = workloadInfo.m_OutputTensorInfos[1];
2931  auto outputInfo = workloadInfo.m_OutputTensorInfos[2];
2932 
2933  // Supported types for various tensors in QLSTM
2934  std::vector<DataType> inputOutputSupportedTypes =
2935  {
2937  };
2938 
2939  std::vector<DataType> cellStateSupportedTypes =
2940  {
2942  };
2943 
2944  std::vector<DataType> weightsSupportedTypes =
2945  {
2947  };
2948 
2949  std::vector<DataType> layerNormPeepholeWeightsSupportedTypes =
2950  {
2952  };
2953 
2954  std::vector<DataType> biasSupportedTypes =
2955  {
2957  };
2958 
2959  // Validate types of input/output tensors
2960  ValidateDataTypes(inputInfo, inputOutputSupportedTypes, descriptorName);
2961  ValidateDataTypes(outputStateInInfo, inputOutputSupportedTypes, descriptorName);
2962  ValidateDataTypes(cellStateInInfo, cellStateSupportedTypes, descriptorName);
2963 
2964  ValidateDataTypes(outputStateOutInfo, inputOutputSupportedTypes, descriptorName);
2965  ValidateDataTypes(cellStateOutInfo, cellStateSupportedTypes, descriptorName);
2966  ValidateDataTypes(outputInfo, inputOutputSupportedTypes, descriptorName);
2967 
2968  // Validate matching types of input/output tensors
2969  ValidateTensorDataTypesMatch(inputInfo, outputStateInInfo, descriptorName, "input", "outputStateIn");
2970  ValidateTensorDataTypesMatch(outputStateInInfo, outputStateOutInfo, descriptorName,
2971  "outputStateIn", "outputStateOut");
2972  ValidateTensorDataTypesMatch(cellStateInInfo, cellStateOutInfo, descriptorName, "cellStateIn", "cellStateOut");
2973 
2974  // Infer number of batches, number of units, input size and output size from tensor dimensions
2975  const uint32_t numBatches = inputInfo.GetShape()[0];
2976  const uint32_t inputSize = inputInfo.GetShape()[1];
2977  const uint32_t outputSize = outputStateInInfo.GetShape()[1];
2978  const uint32_t numUnits = cellStateInInfo.GetShape()[1];
2979 
2980  // Validate number of dimensions and number of elements for input/output tensors
2981  ValidateTensorNumDimNumElem(inputInfo, 2, (numBatches * inputSize), descriptorName + " input");
2982  ValidateTensorNumDimNumElem(outputStateInInfo, 2, (numBatches * outputSize), descriptorName + " outputStateIn");
2983  ValidateTensorNumDimNumElem(cellStateInInfo, 2, (numBatches * numUnits), descriptorName + " cellStateIn");
2984 
2985  ValidateTensorNumDimNumElem(outputStateOutInfo, 2, (numBatches * outputSize), descriptorName + " outputStateOut");
2986  ValidateTensorNumDimNumElem(cellStateOutInfo, 2, (numBatches * numUnits), descriptorName + " cellStateOut");
2987  ValidateTensorNumDimNumElem(outputInfo, 2, (numBatches * outputSize), descriptorName + " output");
2988 
2989  // Validate number of dimensions and number of elements for MANDATORY weight tensors
2990  ValidatePointer(m_InputToForgetWeights, descriptorName, "InputToForgetWeights");
2991  auto inputToForgetWeightsInfo = m_InputToForgetWeights->GetTensorInfo();
2992  ValidateTensorNumDimNumElem(inputToForgetWeightsInfo, 2, (numUnits * inputSize), " InputToForgetWeights");
2993 
2994  ValidatePointer(m_InputToCellWeights, descriptorName, "InputToCellWeights");
2995  auto inputToCellWeightsInfo = m_InputToCellWeights->GetTensorInfo();
2996  ValidateTensorNumDimNumElem(inputToCellWeightsInfo, 2, (numUnits * inputSize), " InputToCellWeights");
2997 
2998  ValidatePointer(m_InputToOutputWeights, descriptorName, "InputToOutputWeights");
2999  auto inputToOutputWeightsInfo = m_InputToOutputWeights->GetTensorInfo();
3000  ValidateTensorNumDimNumElem(inputToOutputWeightsInfo, 2, (numUnits * inputSize), " InputToOutputWeights");
3001 
3002  ValidatePointer(m_RecurrentToForgetWeights, descriptorName, "RecurrentToForgetWeights");
3003  auto recurrentToForgetWeightsInfo = m_RecurrentToForgetWeights->GetTensorInfo();
3004  ValidateTensorNumDimNumElem(recurrentToForgetWeightsInfo, 2, (numUnits * outputSize),
3005  " RecurrentToForgetWeights");
3006 
3007  ValidatePointer(m_RecurrentToCellWeights, descriptorName, "RecurrentToCellWeights");
3008  auto recurrentToCellWeightsInfo = m_RecurrentToCellWeights->GetTensorInfo();
3009  ValidateTensorNumDimNumElem(recurrentToCellWeightsInfo, 2, (numUnits * outputSize), " RecurrentToCellWeights");
3010 
3011  ValidatePointer(m_RecurrentToOutputWeights, descriptorName, "RecurrentToOutputWeights");
3012  auto recurrentToOutputWeightsInfo = m_RecurrentToOutputWeights->GetTensorInfo();
3013  ValidateTensorNumDimNumElem(recurrentToOutputWeightsInfo, 2, (numUnits * outputSize), " RecurrentToCellWeights");
3014 
3015  // Validate data types for MANDATORY weights tensors (all should match each other)
3016  ValidateDataTypes(inputToForgetWeightsInfo, weightsSupportedTypes, descriptorName);
3017 
3018  ValidateTensorDataTypesMatch(inputToForgetWeightsInfo, inputToCellWeightsInfo, descriptorName,
3019  "inputToForgetWeights", "inputToCellWeights");
3020  ValidateTensorDataTypesMatch(inputToForgetWeightsInfo, inputToOutputWeightsInfo, descriptorName,
3021  "inputToForgetWeights", "inputToOutputWeights");
3022 
3023  ValidateTensorDataTypesMatch(inputToForgetWeightsInfo, recurrentToForgetWeightsInfo, descriptorName,
3024  "inputToForgetWeights", "recurrentToForgeteights");
3025  ValidateTensorDataTypesMatch(inputToForgetWeightsInfo, recurrentToCellWeightsInfo, descriptorName,
3026  "inputToForgetWeights", "recurrentToCellWeights");
3027  ValidateTensorDataTypesMatch(inputToForgetWeightsInfo, recurrentToOutputWeightsInfo, descriptorName,
3028  "inputToForgetWeights", "recurrentToOutputWeights");
3029 
3030  // Validate number of dimensions and number of elements for MANDATORY bias tensors
3031  ValidatePointer(m_ForgetGateBias, descriptorName, "ForgetGateBias");
3032  auto forgetGateBiasInfo = m_ForgetGateBias->GetTensorInfo();
3033  ValidateTensorNumDimNumElem(forgetGateBiasInfo, 1, numUnits, " ForgetGateBias");
3034 
3035  ValidatePointer(m_CellBias, descriptorName, "CellBias");
3036  auto cellBiasInfo = m_CellBias->GetTensorInfo();
3037  ValidateTensorNumDimNumElem(cellBiasInfo, 1, numUnits, " CellBias");
3038 
3039  ValidatePointer(m_OutputGateBias, descriptorName, "OutputGateBias");
3040  auto outputGateBiasInfo = m_OutputGateBias->GetTensorInfo();
3041  ValidateTensorNumDimNumElem(outputGateBiasInfo, 1, numUnits, " OutputGateBias");
3042 
3043  // Validate data types for MANDATORY bias tensors
3044  ValidateDataTypes(forgetGateBiasInfo, biasSupportedTypes, descriptorName);
3045 
3046  ValidateTensorDataTypesMatch(forgetGateBiasInfo, cellBiasInfo, descriptorName,
3047  "forgetGateBias", "cellBias");
3048  ValidateTensorDataTypesMatch(forgetGateBiasInfo, outputGateBiasInfo, descriptorName,
3049  "forgetGateBias", "outputGateBias");
3050 
3051  // Validate OPTIONAL params: CIFG (inputToInputWeights, recurrentToInputWeights, inputGateBias)
3052  const bool allCifgParamsPresentOrNot = ((m_InputToInputWeights && m_RecurrentToInputWeights && m_InputGateBias &&
3056 
3057  if (!allCifgParamsPresentOrNot)
3058  {
3059  throw InvalidArgumentException(descriptorName +
3060  ": InputToInputWeights, RecurrentToInputWeights and InputGateBias must either all be present "
3061  "(CIFG disabled) or not be present at all (CIFG enabled). m_Parameters.m_CifgEnabled should be "
3062  "set appropriately.");
3063  }
3064 
3066  {
3067  // Validate number of dimensions and number of elements
3068  auto inputToInputWeightsInfo = m_InputToInputWeights->GetTensorInfo();
3069  ValidateTensorNumDimNumElem(inputToInputWeightsInfo, 2, (numUnits * inputSize), " InputToInputWeights");
3070 
3071  auto recurrentToInputWeightsInfo = m_RecurrentToInputWeights->GetTensorInfo();
3072  ValidateTensorNumDimNumElem(recurrentToInputWeightsInfo, 2, (numUnits * outputSize),
3073  " RecurrentToInputWeights");
3074 
3075  auto inputGateBiasInfo = m_InputGateBias->GetTensorInfo();
3076  ValidateTensorNumDimNumElem(inputGateBiasInfo, 1, numUnits, " InputGateBias");
3077 
3078  // Validate data types
3079  ValidateTensorDataTypesMatch(inputToForgetWeightsInfo, inputToInputWeightsInfo, descriptorName,
3080  "inputToForgetWeights", "inputToInputWeights");
3081  ValidateTensorDataTypesMatch(inputToForgetWeightsInfo, recurrentToInputWeightsInfo, descriptorName,
3082  "inputToForgetWeights", "recurrentToInputWeights");
3083  ValidateTensorDataTypesMatch(forgetGateBiasInfo, inputGateBiasInfo, descriptorName,
3084  "forgetGateBias", "inputGateBias");
3085  }
3086 
3087  // Validate OPTIONAL params: Peephole (cellToInputWeights, cellToForgetWeights, cellToOutputWeights)
3088  bool allPeepholeWeightsPresentOrNot =
3093 
3094  if (!allPeepholeWeightsPresentOrNot)
3095  {
3096  throw InvalidArgumentException(descriptorName +
3097  ": CellToInputWeights, CellToForgetWeights and CellToOutputWeights should all be present (Peephole "
3098  "enabled) or not be present at all (Peephole disabled). CellToInputWeights should only be present "
3099  "when Peephole is enabled and CIFG is disabled. m_Parameters.m_PeepholeEnabled should be set "
3100  "appropriately.");
3101  }
3102 
3104  {
3105  auto cellToForgetWeightsInfo = m_CellToForgetWeights->GetTensorInfo();
3106  ValidateTensorNumDimNumElem(cellToForgetWeightsInfo, 1, numUnits, " cellToForgetWeights");
3107  ValidateDataTypes(cellToForgetWeightsInfo, layerNormPeepholeWeightsSupportedTypes, descriptorName);
3108 
3109  auto cellToOutputWeightsInfo = m_CellToOutputWeights->GetTensorInfo();
3110  ValidateTensorNumDimNumElem(cellToOutputWeightsInfo, 1, numUnits, " cellToOutputWeights");
3111  ValidateTensorDataTypesMatch(cellToForgetWeightsInfo, cellToOutputWeightsInfo, descriptorName,
3112  "cellToForgetWeight", "cellToOutputWeights");
3113 
3115  {
3116  auto cellToInputWeightsInfo = m_CellToInputWeights->GetTensorInfo();
3117  ValidateTensorNumDimNumElem(cellToInputWeightsInfo, 1, numUnits, " cellToInputWeights");
3118  ValidateTensorDataTypesMatch(cellToForgetWeightsInfo, cellToInputWeightsInfo, descriptorName,
3119  "cellToForgetWeights", "cellToInputWeights");
3120  }
3121  }
3122 
3123  // Validate OPTIONAL params: Layer Norm Weights
3124  bool allLayerNormWeightsPresentOrNot =
3129 
3130  if (!allLayerNormWeightsPresentOrNot)
3131  {
3132  throw InvalidArgumentException(descriptorName +
3133  ": InputLayerNormWeights, ForgetLayerNormWeights, m_OutputLayerNormWeights "
3134  "and CellLayerNormWeights should all be present (Layer Norm enabled) or not "
3135  "be present at all (Layer Norm disabled). InputLayerNormWeights should "
3136  "only be present when Layer Norm is enabled and CIFG is disabled. "
3137  "m_Parameters.m_LayerNormEnabled should be set appropriately.");
3138  }
3139 
3141  {
3142  auto forgetLayerNormWeightsInfo = m_ForgetLayerNormWeights->GetTensorInfo();
3143  ValidateTensorNumDimNumElem(forgetLayerNormWeightsInfo, 1, numUnits, " forgetLayerNormWeights");
3144  ValidateDataTypes(forgetLayerNormWeightsInfo, layerNormPeepholeWeightsSupportedTypes, descriptorName);
3145 
3146  auto cellLayerNormWeightsInfo = m_CellLayerNormWeights->GetTensorInfo();
3147  ValidateTensorNumDimNumElem(cellLayerNormWeightsInfo, 1, numUnits, " cellLayerNormWeights");
3148  ValidateTensorDataTypesMatch(forgetLayerNormWeightsInfo, cellLayerNormWeightsInfo, descriptorName,
3149  "forgetLayerNormWeights", "cellLayerNormWeights");
3150 
3151  auto outputLayerNormWeightsInfo = m_OutputLayerNormWeights->GetTensorInfo();
3152  ValidateTensorNumDimNumElem(outputLayerNormWeightsInfo, 1, numUnits, " outputLayerNormWeights");
3153  ValidateTensorDataTypesMatch(forgetLayerNormWeightsInfo, outputLayerNormWeightsInfo, descriptorName,
3154  "forgetLayerNormWeights", "outputLayerNormWeights");
3155 
3157  {
3158  auto inputLayerNormWeightsInfo = m_InputLayerNormWeights->GetTensorInfo();
3159  ValidateTensorNumDimNumElem(inputLayerNormWeightsInfo, 1, numUnits, " inputLayerNormWeights");
3160  ValidateTensorDataTypesMatch(forgetLayerNormWeightsInfo, inputLayerNormWeightsInfo, descriptorName,
3161  "forgetLayerNormWeights", "inputLayerNormWeights");
3162  }
3163  }
3164 
3165  // Validate OPTIONAL params: Projection (projectionWeights, projectionBias)
3166  bool correctProjectionTensorsPresent =
3170 
3171  if (!correctProjectionTensorsPresent)
3172  {
3173  throw InvalidArgumentException(descriptorName +
3174  ": If projection is enabled, ProjectionWeights should be present and "
3175  "ProjectionBias is optional. If projection is disabled, neither "
3176  "ProjectionWeights nor ProjectionBias should be present.");
3177  }
3178 
3180  {
3181  auto projectionWeightsInfo = m_ProjectionWeights->GetTensorInfo();
3182  ValidateTensorNumDimNumElem(projectionWeightsInfo, 2, (numUnits * outputSize), "ProjectionWeights");
3183  ValidateDataTypes(projectionWeightsInfo, weightsSupportedTypes, descriptorName);
3184 
3185  if (m_ProjectionBias)
3186  {
3187  auto projectionBiasInfo = m_ProjectionBias->GetTensorInfo();
3188  ValidateTensorNumDimNumElem(projectionBiasInfo, 1, outputSize, "ProjectionBias");
3189  ValidateDataTypes(projectionBiasInfo, biasSupportedTypes, descriptorName);
3190  }
3191 
3192  }
3193  else if ((outputInfo.GetQuantizationScale() != m_Parameters.m_HiddenStateScale) &&
3194  outputInfo.GetQuantizationOffset() != m_Parameters.m_HiddenStateZeroPoint) {
3195  throw InvalidArgumentException(descriptorName +
3196  ": If projection is disabled, output quantization info (scale, offset) "
3197  "should match HiddenStateScale and HiddenStateZeroPoint.");
3198  }
3199 
3200 }
const ConstCpuTensorHandle * m_CellToForgetWeights
const ConstCpuTensorHandle * m_ProjectionWeights
bool m_PeepholeEnabled
Enable/disable peephole.
const ConstCpuTensorHandle * m_ProjectionBias
float m_HiddenStateScale
Hidden State quantization scale.
const ConstCpuTensorHandle * m_ForgetLayerNormWeights
const ConstCpuTensorHandle * m_CellLayerNormWeights
const ConstCpuTensorHandle * m_RecurrentToCellWeights
const ConstCpuTensorHandle * m_RecurrentToInputWeights
const ConstCpuTensorHandle * m_OutputGateBias
const ConstCpuTensorHandle * m_CellBias
const ConstCpuTensorHandle * m_CellToOutputWeights
const ConstCpuTensorHandle * m_OutputLayerNormWeights
std::vector< TensorInfo > m_InputTensorInfos
bool m_LayerNormEnabled
Enable/disable layer normalization.
const ConstCpuTensorHandle * m_InputToForgetWeights
std::vector< TensorInfo > m_OutputTensorInfos
const ConstCpuTensorHandle * m_CellToInputWeights
const ConstCpuTensorHandle * m_RecurrentToOutputWeights
bool m_ProjectionEnabled
Enable/disable the projection layer.
const ConstCpuTensorHandle * m_InputGateBias
const ConstCpuTensorHandle * m_InputLayerNormWeights
const ConstCpuTensorHandle * m_RecurrentToForgetWeights
const ConstCpuTensorHandle * m_ForgetGateBias
const ConstCpuTensorHandle * m_InputToOutputWeights
bool m_CifgEnabled
Enable/disable CIFG (coupled input & forget gate).
const TensorInfo & GetTensorInfo() const
const ConstCpuTensorHandle * m_InputToInputWeights
int32_t m_HiddenStateZeroPoint
Hidden State zero point.
const ConstCpuTensorHandle * m_InputToCellWeights

Member Data Documentation

◆ m_CellBias

const ConstCpuTensorHandle* m_CellBias

Definition at line 592 of file WorkloadData.hpp.

Referenced by QLstmLayer::CreateWorkload().

◆ m_CellLayerNormWeights

const ConstCpuTensorHandle* m_CellLayerNormWeights

Definition at line 598 of file WorkloadData.hpp.

Referenced by QLstmLayer::CreateWorkload().

◆ m_CellToForgetWeights

const ConstCpuTensorHandle* m_CellToForgetWeights

Definition at line 588 of file WorkloadData.hpp.

Referenced by QLstmLayer::CreateWorkload().

◆ m_CellToInputWeights

const ConstCpuTensorHandle* m_CellToInputWeights

Definition at line 587 of file WorkloadData.hpp.

Referenced by QLstmLayer::CreateWorkload().

◆ m_CellToOutputWeights

const ConstCpuTensorHandle* m_CellToOutputWeights

Definition at line 589 of file WorkloadData.hpp.

Referenced by QLstmLayer::CreateWorkload().

◆ m_ForgetGateBias

const ConstCpuTensorHandle* m_ForgetGateBias

Definition at line 591 of file WorkloadData.hpp.

Referenced by QLstmLayer::CreateWorkload().

◆ m_ForgetLayerNormWeights

const ConstCpuTensorHandle* m_ForgetLayerNormWeights

Definition at line 597 of file WorkloadData.hpp.

Referenced by QLstmLayer::CreateWorkload().

◆ m_InputGateBias

const ConstCpuTensorHandle* m_InputGateBias

Definition at line 590 of file WorkloadData.hpp.

Referenced by QLstmLayer::CreateWorkload().

◆ m_InputLayerNormWeights

const ConstCpuTensorHandle* m_InputLayerNormWeights

Definition at line 596 of file WorkloadData.hpp.

Referenced by QLstmLayer::CreateWorkload().

◆ m_InputToCellWeights

const ConstCpuTensorHandle* m_InputToCellWeights

Definition at line 581 of file WorkloadData.hpp.

Referenced by QLstmLayer::CreateWorkload().

◆ m_InputToForgetWeights

const ConstCpuTensorHandle* m_InputToForgetWeights

Definition at line 580 of file WorkloadData.hpp.

Referenced by QLstmLayer::CreateWorkload().

◆ m_InputToInputWeights

const ConstCpuTensorHandle* m_InputToInputWeights

Definition at line 579 of file WorkloadData.hpp.

Referenced by QLstmLayer::CreateWorkload().

◆ m_InputToOutputWeights

const ConstCpuTensorHandle* m_InputToOutputWeights

Definition at line 582 of file WorkloadData.hpp.

Referenced by QLstmLayer::CreateWorkload().

◆ m_OutputGateBias

const ConstCpuTensorHandle* m_OutputGateBias

Definition at line 593 of file WorkloadData.hpp.

Referenced by QLstmLayer::CreateWorkload().

◆ m_OutputLayerNormWeights

const ConstCpuTensorHandle* m_OutputLayerNormWeights

Definition at line 599 of file WorkloadData.hpp.

Referenced by QLstmLayer::CreateWorkload().

◆ m_ProjectionBias

const ConstCpuTensorHandle* m_ProjectionBias

Definition at line 595 of file WorkloadData.hpp.

Referenced by QLstmLayer::CreateWorkload().

◆ m_ProjectionWeights

const ConstCpuTensorHandle* m_ProjectionWeights

Definition at line 594 of file WorkloadData.hpp.

Referenced by QLstmLayer::CreateWorkload().

◆ m_RecurrentToCellWeights

const ConstCpuTensorHandle* m_RecurrentToCellWeights

Definition at line 585 of file WorkloadData.hpp.

Referenced by QLstmLayer::CreateWorkload().

◆ m_RecurrentToForgetWeights

const ConstCpuTensorHandle* m_RecurrentToForgetWeights

Definition at line 584 of file WorkloadData.hpp.

Referenced by QLstmLayer::CreateWorkload().

◆ m_RecurrentToInputWeights

const ConstCpuTensorHandle* m_RecurrentToInputWeights

Definition at line 583 of file WorkloadData.hpp.

Referenced by QLstmLayer::CreateWorkload().

◆ m_RecurrentToOutputWeights

const ConstCpuTensorHandle* m_RecurrentToOutputWeights

Definition at line 586 of file WorkloadData.hpp.

Referenced by QLstmLayer::CreateWorkload().


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