23.11
|
Go to the source code of this file.
◆ CreateEmptyTosaSerializationBasicBlock()
TosaSerializationBasicBlock* CreateEmptyTosaSerializationBasicBlock |
( |
| ) |
|
Definition at line 11 of file TosaMappings.cpp.
14 auto* op =
new TosaSerializationOperator(Op_UNKNOWN, Attribute_NONE,
nullptr, {}, {});
15 return new TosaSerializationBasicBlock(
"",
"", {op}, {}, {}, {});
Referenced by GetTosaMapping().
◆ GetTosaMapping()
Definition at line 18 of file TosaMappings.cpp.
26 case LayerType::Addition:
27 case LayerType::Multiplication:
28 case LayerType::Subtraction:
32 case LayerType::ElementwiseUnary:
34 auto unaryDesc = PolymorphicDowncast<const ElementwiseUnaryDescriptor*>(&descriptor);
37 case LayerType::Concat:
39 auto concatDesc = PolymorphicDowncast<const OriginsDescriptor*>(&descriptor);
42 case LayerType::Constant:
46 case LayerType::Convolution2d:
48 auto conv2dDesc = PolymorphicDowncast<const Convolution2dDescriptor*>(&descriptor);
53 auto poolDesc = PolymorphicDowncast<const Pooling2dDescriptor*>(&descriptor);
55 bool avgPoolIgnoreValue =
56 (poolDesc->m_PoolType == PoolingAlgorithm::Average) &&
57 (poolDesc->m_PaddingMethod == PaddingMethod::IgnoreValue);
59 if (poolDesc->m_PoolType == PoolingAlgorithm::L2)
63 else if (avgPoolIgnoreValue)
72 case LayerType::Reshape:
74 auto reshapeDesc = PolymorphicDowncast<const ReshapeDescriptor*>(&descriptor);
79 auto sliceDesc = PolymorphicDowncast<const SliceDescriptor*>(&descriptor);
82 case LayerType::TransposeConvolution2d:
84 auto transposeConv2dDesc = PolymorphicDowncast<const TransposeConvolution2dDescriptor*>(&descriptor);
89 auto transposeDesc = PolymorphicDowncast<const TransposeDescriptor*>(&descriptor);
References armnn::Addition, armnn::Average, armnn::Concat, armnn::Constant, ConvertAvgPool2DIgnoreValueToTosaOperator(), ConvertConcatToTosaOperator(), ConvertConstantToTosaOperator(), ConvertConv2dToTosaOperator(), ConvertElementwiseBinaryToTosaOperator(), ConvertElementwiseUnaryOperator(), ConvertPooling2DToTosaOperator(), ConvertReshapeToTosaOperator(), ConvertSliceToTosaOperator(), ConvertTransposeConv2dToTosaOperator(), ConvertTransposeToTosaOperator(), armnn::Convolution2d, CreateEmptyTosaSerializationBasicBlock(), armnn::ElementwiseUnary, armnn::IgnoreValue, armnn::L2, armnn::Multiplication, armnn::Pooling2d, armnn::Reshape, armnn::Slice, armnn::Subtraction, armnn::Transpose, and armnn::TransposeConvolution2d.
Referenced by GetTosaMappingFromLayer(), and TosaRefLayerSupport::IsLayerSupported().
◆ GetTosaMappingFromLayer()
TosaSerializationBasicBlock* GetTosaMappingFromLayer |
( |
Layer * |
layer | ) |
|
void Transpose(const armnn::TensorShape &dstShape, const armnn::PermutationVector &mappings, const void *src, void *dst, size_t dataTypeSize)
TosaSerializationBasicBlock * CreateEmptyTosaSerializationBasicBlock()
TosaSerializationBasicBlock * ConvertReshapeToTosaOperator(const Layer *layer, const std::vector< const TensorInfo * > &inputs, const std::vector< const TensorInfo * > &outputs, const ReshapeDescriptor *reshapeDescriptor)
void Pooling2d(Decoder< float > &rInputDecoder, Encoder< float > &rOutputEncoder, const TensorInfo &inputInfo, const TensorInfo &outputInfo, const Pooling2dDescriptor ¶ms)
Computes the Pooling2d operation.
TosaSerializationBasicBlock * ConvertAvgPool2DIgnoreValueToTosaOperator(const Layer *layer, const std::vector< const TensorInfo * > &inputs, const std::vector< const TensorInfo * > &outputs, const Pooling2dDescriptor *poolDescriptor)
TosaSerializationBasicBlock * ConvertConv2dToTosaOperator(const Layer *layer, const std::vector< const TensorInfo * > &inputs, const std::vector< const TensorInfo * > &outputs, const Convolution2dDescriptor *conv2dDescriptor)
TosaSerializationBasicBlock * ConvertPooling2DToTosaOperator(const Layer *layer, const std::vector< const TensorInfo * > &inputs, const std::vector< const TensorInfo * > &outputs, const Pooling2dDescriptor *poolDescriptor)
TosaSerializationBasicBlock * ConvertConcatToTosaOperator(const Layer *layer, const std::vector< const TensorInfo * > &inputs, const std::vector< const TensorInfo * > &outputs, const OriginsDescriptor *concatDescriptor)
const std::vector< InputSlot > & GetInputSlots() const
TosaSerializationBasicBlock * ConvertElementwiseUnaryOperator(const Layer *layer, const std::vector< const TensorInfo * > &inputs, const std::vector< const TensorInfo * > &outputs, const ElementwiseUnaryDescriptor *unaryDescriptor)
TosaSerializationBasicBlock * ConvertConstantToTosaOperator(const Layer *layer, const std::vector< const TensorInfo * > &outputs)
void Slice(const TensorInfo &inputInfo, const SliceDescriptor &descriptor, const void *inputData, void *outputData, unsigned int dataTypeSize)
TosaSerializationBasicBlock * ConvertSliceToTosaOperator(const Layer *layer, const std::vector< const TensorInfo * > &inputs, const std::vector< const TensorInfo * > &outputs, const SliceDescriptor *sliceDescriptor)
const std::vector< OutputSlot > & GetOutputSlots() const
TosaSerializationBasicBlock * GetTosaMapping(const Layer *layer, const LayerType type, const std::vector< const TensorInfo * > &inputs, const std::vector< const TensorInfo * > &outputs, const BaseDescriptor &descriptor)
TosaSerializationBasicBlock * ConvertTransposeConv2dToTosaOperator(const Layer *layer, const std::vector< const TensorInfo * > &inputs, const std::vector< const TensorInfo * > &outputs, const TransposeConvolution2dDescriptor *descriptor)
virtual const BaseDescriptor & GetParameters() const override
If the layer has a descriptor return it.
TosaSerializationBasicBlock * ConvertElementwiseBinaryToTosaOperator(const Layer *layer, const LayerType type, const std::vector< const TensorInfo * > &inputs, const std::vector< const TensorInfo * > &outputs)
LayerType GetType() const override
Returns the armnn::LayerType of this layer.
TosaSerializationBasicBlock * ConvertTransposeToTosaOperator(const Layer *layer, const std::vector< const TensorInfo * > &inputs, const std::vector< const TensorInfo * > &outputs, const TransposeDescriptor *transposeDescriptor)