From 6940dd720ebb6b3d1df8ca203ab696daefe58189 Mon Sep 17 00:00:00 2001 From: Jim Flynn Date: Fri, 20 Mar 2020 12:25:56 +0000 Subject: renamed Documentation folder 20.02 and added .nojekyll file Signed-off-by: Jim Flynn --- ...nn_1_1_space_to_batch_nd_queue_descriptor.xhtml | 213 +++++++++++++++++++++ 1 file changed, 213 insertions(+) create mode 100644 20.02/structarmnn_1_1_space_to_batch_nd_queue_descriptor.xhtml (limited to '20.02/structarmnn_1_1_space_to_batch_nd_queue_descriptor.xhtml') diff --git a/20.02/structarmnn_1_1_space_to_batch_nd_queue_descriptor.xhtml b/20.02/structarmnn_1_1_space_to_batch_nd_queue_descriptor.xhtml new file mode 100644 index 0000000000..674a1404d2 --- /dev/null +++ b/20.02/structarmnn_1_1_space_to_batch_nd_queue_descriptor.xhtml @@ -0,0 +1,213 @@ + + + + + + + + + + + + + +ArmNN: SpaceToBatchNdQueueDescriptor Struct Reference + + + + + + + + + + + + + + + + +
+
+ + + + ArmNN + + + +
+
+  20.02 +
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+ +
+
SpaceToBatchNdQueueDescriptor Struct Reference
+
+
+ +

#include <WorkloadData.hpp>

+
+Inheritance diagram for SpaceToBatchNdQueueDescriptor:
+
+
+ + +QueueDescriptorWithParameters< SpaceToBatchNdDescriptor > +QueueDescriptor + +
+ + + + + + + +

+Public Member Functions

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
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Additional Inherited Members

- Public Attributes inherited from QueueDescriptorWithParameters< SpaceToBatchNdDescriptor >
SpaceToBatchNdDescriptor m_Parameters
 
- Public Attributes inherited from QueueDescriptor
std::vector< ITensorHandle * > m_Inputs
 
std::vector< ITensorHandle * > m_Outputs
 
- Protected Member Functions inherited from QueueDescriptorWithParameters< SpaceToBatchNdDescriptor >
 ~QueueDescriptorWithParameters ()=default
 
 QueueDescriptorWithParameters ()=default
 
 QueueDescriptorWithParameters (QueueDescriptorWithParameters const &)=default
 
QueueDescriptorWithParametersoperator= (QueueDescriptorWithParameters const &)=default
 
- Protected Member Functions inherited from QueueDescriptor
 ~QueueDescriptor ()=default
 
 QueueDescriptor ()=default
 
 QueueDescriptor (QueueDescriptor const &)=default
 
QueueDescriptoroperator= (QueueDescriptor const &)=default
 
+

Detailed Description

+
+

Definition at line 343 of file WorkloadData.hpp.

+

Member Function Documentation

+ +

◆ Validate()

+ +
+
+ + + + + + + + +
void Validate (const WorkloadInfoworkloadInfo) const
+
+ +

Definition at line 1603 of file WorkloadData.cpp.

+ +

References armnn::BFloat16, armnn::Float16, armnn::Float32, DataLayoutIndexed::GetChannelsIndex(), DataLayoutIndexed::GetHeightIndex(), TensorInfo::GetNumElements(), TensorInfo::GetShape(), DataLayoutIndexed::GetWidthIndex(), WorkloadInfo::m_InputTensorInfos, WorkloadInfo::m_OutputTensorInfos, armnn::QAsymmU8, and armnn::QSymmS16.

+
1604 {
1605  const std::string descriptorName{"SpaceToBatchNdQueueDescriptor"};
1606 
1607  ValidateNumInputs(workloadInfo, descriptorName, 1);
1608  ValidateNumOutputs(workloadInfo, descriptorName, 1);
1609 
1610  const TensorInfo& inputTensorInfo = workloadInfo.m_InputTensorInfos[0];
1611  const TensorInfo& outputTensorInfo = workloadInfo.m_OutputTensorInfos[0];
1612 
1613  ValidateTensorNumDimensions(inputTensorInfo, descriptorName, 4, "input");
1614  ValidateTensorNumDimensions(outputTensorInfo, descriptorName, 4, "output");
1615 
1616  if (m_Parameters.m_BlockShape.size() != 2)
1617  {
1618  throw InvalidArgumentException(descriptorName + ": Block Shape must contain 2 spatial dimensions.");
1619  }
1620 
1621  if (m_Parameters.m_BlockShape.size() != m_Parameters.m_PadList.size())
1622  {
1623  throw InvalidArgumentException(descriptorName + ": Pad List must contain the same number of "
1624  "dimensions as Block Shape.");
1625  }
1626 
1627  const TensorShape& inputShape = inputTensorInfo.GetShape();
1628 
1629  std::pair<unsigned int, unsigned int> heightPad = m_Parameters.m_PadList[0];
1630  std::pair<unsigned int, unsigned int> widthPad = m_Parameters.m_PadList[1];
1631 
1632  DataLayoutIndexed dimensionIndices(m_Parameters.m_DataLayout);
1633 
1634  const unsigned int inputWidth = inputShape[dimensionIndices.GetWidthIndex()] +
1635  widthPad.first + widthPad.second;
1636  const unsigned int inputHeight = inputShape[dimensionIndices.GetHeightIndex()] +
1637  heightPad.first + heightPad.second;
1638 
1639  const unsigned int numInputElements = inputShape[0] * inputHeight * inputWidth *
1640  inputShape[dimensionIndices.GetChannelsIndex()];
1641  const unsigned int numOutputElements = outputTensorInfo.GetNumElements();
1642 
1643  if (numOutputElements != numInputElements)
1644  {
1645  throw InvalidArgumentException(descriptorName + ": Input tensor has " +
1646  to_string(numInputElements) + " after padding but output tensor has " +
1647  to_string(numOutputElements) + " elements.");
1648  }
1649 
1650  if (inputHeight % m_Parameters.m_BlockShape[0] != 0 || inputWidth % m_Parameters.m_BlockShape[1] != 0)
1651  {
1652  throw InvalidArgumentException(descriptorName + ": Input shape after padding must be "
1653  "divisible by Block Shape in all spatial dimensions");
1654  }
1655 
1656  std::vector<DataType> supportedTypes =
1657  {
1663  };
1664 
1665  ValidateDataTypes(inputTensorInfo, supportedTypes, descriptorName);
1666  ValidateTensorDataTypesMatch(inputTensorInfo, outputTensorInfo, descriptorName, "input", "output");
1667 }
const TensorShape & GetShape() const
Definition: Tensor.hpp:88
+ + + +
std::vector< std::pair< unsigned int, unsigned int > > m_PadList
Specifies the padding values for the input dimension: heightPad{top, bottom} widthPad{left, right}.
+ +
DataLayout m_DataLayout
The data layout to be used (NCHW, NHWC).
+
std::vector< TensorInfo > m_InputTensorInfos
+
Provides access to the appropriate indexes for Channels, Height and Width based on DataLayout...
+ + +
std::vector< TensorInfo > m_OutputTensorInfos
+
std::vector< unsigned int > m_BlockShape
Block shape value.
+ + + +
unsigned int GetNumElements() const
Definition: Tensor.hpp:93
+
+
+
+
The documentation for this struct was generated from the following files: +
+
+ + + + -- cgit v1.2.1