ArmNN
NotReleased
|
This layer represents a QuantizedLstm operation. More...
#include <QuantizedLstmLayer.hpp>
Public Member Functions | |
virtual std::unique_ptr< IWorkload > | CreateWorkload (const IWorkloadFactory &factory) const override |
QuantizedLstmLayer * | Clone (Graph &graph) const override |
void | ValidateTensorShapesFromInputs () override |
std::vector< TensorShape > | InferOutputShapes (const std::vector< TensorShape > &inputShapes) const override |
void | Accept (ILayerVisitor &visitor) const override |
Public Member Functions inherited from Layer | |
Layer (unsigned int numInputSlots, unsigned int numOutputSlots, LayerType type, const char *name) | |
Layer (unsigned int numInputSlots, unsigned int numOutputSlots, LayerType type, DataLayout layout, const char *name) | |
const std::string & | GetNameStr () const |
const OutputHandler & | GetOutputHandler (unsigned int i=0) const |
OutputHandler & | GetOutputHandler (unsigned int i=0) |
const std::vector< InputSlot > & | GetInputSlots () const |
const std::vector< OutputSlot > & | GetOutputSlots () const |
std::vector< InputSlot >::iterator | BeginInputSlots () |
std::vector< InputSlot >::iterator | EndInputSlots () |
std::vector< OutputSlot >::iterator | BeginOutputSlots () |
std::vector< OutputSlot >::iterator | EndOutputSlots () |
bool | IsOutputUnconnected () |
void | ResetPriority () const |
LayerPriority | GetPriority () const |
LayerType | GetType () const |
DataType | GetDataType () const |
const BackendId & | GetBackendId () const |
void | SetBackendId (const BackendId &id) |
virtual void | CreateTensorHandles (const TensorHandleFactoryRegistry ®istry, const IWorkloadFactory &factory, const bool IsMemoryManaged=true) |
void | VerifyLayerConnections (unsigned int expectedConnections, const CheckLocation &location) const |
virtual void | SerializeLayerParameters (ParameterStringifyFunction &fn) const |
virtual void | ReleaseConstantData () |
template<typename Op > | |
void | OperateOnConstantTensors (Op op) |
const char * | GetName () const override |
unsigned int | GetNumInputSlots () const override |
unsigned int | GetNumOutputSlots () const override |
const InputSlot & | GetInputSlot (unsigned int index) const override |
InputSlot & | GetInputSlot (unsigned int index) override |
const OutputSlot & | GetOutputSlot (unsigned int index=0) const override |
OutputSlot & | GetOutputSlot (unsigned int index=0) override |
void | SetGuid (LayerGuid guid) |
LayerGuid | GetGuid () const final |
void | AddRelatedLayerName (const std::string layerName) |
const std::list< std::string > & | GetRelatedLayerNames () |
virtual void | Reparent (Graph &dest, std::list< Layer *>::const_iterator iterator)=0 |
Public Attributes | |
QuantizedLstmParameters | m_QuantizedLstmParameters |
Protected Member Functions | |
QuantizedLstmLayer (const char *name) | |
~QuantizedLstmLayer ()=default | |
Default destructor. More... | |
Layer::ConstantTensors | GetConstantTensorsByRef () override |
Protected Member Functions inherited from Layer | |
virtual | ~Layer ()=default |
template<typename QueueDescriptor > | |
void | CollectQueueDescriptorInputs (QueueDescriptor &descriptor, WorkloadInfo &info) const |
template<typename QueueDescriptor > | |
void | CollectQueueDescriptorOutputs (QueueDescriptor &descriptor, WorkloadInfo &info) const |
template<typename QueueDescriptor > | |
WorkloadInfo | PrepInfoAndDesc (QueueDescriptor &descriptor) const |
Helper function to reduce duplication in *LayerCreateWorkload. More... | |
template<typename LayerType , typename ... Params> | |
LayerType * | CloneBase (Graph &graph, Params &&... params) const |
Protected Member Functions inherited from IConnectableLayer | |
~IConnectableLayer () | |
Objects are not deletable via the handle. More... | |
Additional Inherited Members | |
Protected Types inherited from Layer | |
using | ConstantTensors = std::vector< std::reference_wrapper< std::unique_ptr< ScopedCpuTensorHandle > >> |
Protected Attributes inherited from Layer | |
std::vector< OutputHandler > | m_OutputHandlers |
This layer represents a QuantizedLstm operation.
Definition at line 45 of file QuantizedLstmLayer.hpp.
|
protected |
Constructor to create a QuantizedLstmLayer.
[in] | name | Optional name for the layer. |
Definition at line 17 of file QuantizedLstmLayer.cpp.
References armnn::QuantizedLstm.
|
protecteddefault |
Default destructor.
|
overridevirtual |
Implements IConnectableLayer.
Definition at line 168 of file QuantizedLstmLayer.cpp.
References Layer::GetName(), QuantizedLstmParameters::m_CellBias, QuantizedLstmInputParams::m_CellBias, QuantizedLstmParameters::m_ForgetGateBias, QuantizedLstmInputParams::m_ForgetGateBias, QuantizedLstmParameters::m_InputGateBias, QuantizedLstmInputParams::m_InputGateBias, QuantizedLstmParameters::m_InputToCellWeights, QuantizedLstmInputParams::m_InputToCellWeights, QuantizedLstmParameters::m_InputToForgetWeights, QuantizedLstmInputParams::m_InputToForgetWeights, QuantizedLstmParameters::m_InputToInputWeights, QuantizedLstmInputParams::m_InputToInputWeights, QuantizedLstmParameters::m_InputToOutputWeights, QuantizedLstmInputParams::m_InputToOutputWeights, QuantizedLstmParameters::m_OutputGateBias, QuantizedLstmInputParams::m_OutputGateBias, QuantizedLstmLayer::m_QuantizedLstmParameters, QuantizedLstmParameters::m_RecurrentToCellWeights, QuantizedLstmInputParams::m_RecurrentToCellWeights, QuantizedLstmParameters::m_RecurrentToForgetWeights, QuantizedLstmInputParams::m_RecurrentToForgetWeights, QuantizedLstmParameters::m_RecurrentToInputWeights, QuantizedLstmInputParams::m_RecurrentToInputWeights, QuantizedLstmParameters::m_RecurrentToOutputWeights, QuantizedLstmInputParams::m_RecurrentToOutputWeights, and ILayerVisitor::VisitQuantizedLstmLayer().
|
overridevirtual |
Creates a dynamically-allocated copy of this layer.
[in] | graph | The graph into which this layer is being cloned. |
Implements Layer.
Definition at line 45 of file QuantizedLstmLayer.cpp.
References Layer::GetName(), QuantizedLstmParameters::m_CellBias, QuantizedLstmParameters::m_ForgetGateBias, QuantizedLstmParameters::m_InputGateBias, QuantizedLstmParameters::m_InputToCellWeights, QuantizedLstmParameters::m_InputToForgetWeights, QuantizedLstmParameters::m_InputToInputWeights, QuantizedLstmParameters::m_InputToOutputWeights, QuantizedLstmParameters::m_OutputGateBias, QuantizedLstmLayer::m_QuantizedLstmParameters, QuantizedLstmParameters::m_RecurrentToCellWeights, QuantizedLstmParameters::m_RecurrentToForgetWeights, QuantizedLstmParameters::m_RecurrentToInputWeights, and QuantizedLstmParameters::m_RecurrentToOutputWeights.
|
overridevirtual |
Makes a workload for the QuantizedLstm type.
[in] | graph | The graph where this layer can be found. |
[in] | factory | The workload factory which will create the workload. |
Implements Layer.
Definition at line 22 of file QuantizedLstmLayer.cpp.
References IWorkloadFactory::CreateQuantizedLstm(), QuantizedLstmParameters::m_CellBias, QuantizedLstmQueueDescriptor::m_CellBias, QuantizedLstmParameters::m_ForgetGateBias, QuantizedLstmQueueDescriptor::m_ForgetGateBias, QuantizedLstmParameters::m_InputGateBias, QuantizedLstmQueueDescriptor::m_InputGateBias, QuantizedLstmParameters::m_InputToCellWeights, QuantizedLstmQueueDescriptor::m_InputToCellWeights, QuantizedLstmParameters::m_InputToForgetWeights, QuantizedLstmQueueDescriptor::m_InputToForgetWeights, QuantizedLstmParameters::m_InputToInputWeights, QuantizedLstmQueueDescriptor::m_InputToInputWeights, QuantizedLstmParameters::m_InputToOutputWeights, QuantizedLstmQueueDescriptor::m_InputToOutputWeights, QuantizedLstmParameters::m_OutputGateBias, QuantizedLstmQueueDescriptor::m_OutputGateBias, QuantizedLstmLayer::m_QuantizedLstmParameters, QuantizedLstmParameters::m_RecurrentToCellWeights, QuantizedLstmQueueDescriptor::m_RecurrentToCellWeights, QuantizedLstmParameters::m_RecurrentToForgetWeights, QuantizedLstmQueueDescriptor::m_RecurrentToForgetWeights, QuantizedLstmParameters::m_RecurrentToInputWeights, QuantizedLstmQueueDescriptor::m_RecurrentToInputWeights, QuantizedLstmParameters::m_RecurrentToOutputWeights, QuantizedLstmQueueDescriptor::m_RecurrentToOutputWeights, and Layer::PrepInfoAndDesc().
|
overrideprotectedvirtual |
Retrieve the handles to the constant values stored by the layer.
Reimplemented from Layer.
Definition at line 147 of file QuantizedLstmLayer.cpp.
References QuantizedLstmParameters::m_CellBias, QuantizedLstmParameters::m_ForgetGateBias, QuantizedLstmParameters::m_InputGateBias, QuantizedLstmParameters::m_InputToCellWeights, QuantizedLstmParameters::m_InputToForgetWeights, QuantizedLstmParameters::m_InputToInputWeights, QuantizedLstmParameters::m_InputToOutputWeights, QuantizedLstmParameters::m_OutputGateBias, QuantizedLstmLayer::m_QuantizedLstmParameters, QuantizedLstmParameters::m_RecurrentToCellWeights, QuantizedLstmParameters::m_RecurrentToForgetWeights, QuantizedLstmParameters::m_RecurrentToInputWeights, and QuantizedLstmParameters::m_RecurrentToOutputWeights.
|
overridevirtual |
By default returns inputShapes if the number of inputs are equal to number of outputs, otherwise infers the output shapes from given input shapes and layer properties.
[in] | inputShapes | The input shapes layer has. |
Reimplemented from Layer.
Definition at line 79 of file QuantizedLstmLayer.cpp.
Referenced by QuantizedLstmInferOutputShapeImpl(), and QuantizedLstmLayer::ValidateTensorShapesFromInputs().
|
overridevirtual |
Check if the input tensor shape(s) will lead to a valid configuration of QuantizedLstmLayer.
Implements Layer.
Definition at line 94 of file QuantizedLstmLayer.cpp.
References CHECK_LOCATION, InputSlot::GetConnection(), Layer::GetInputSlot(), Layer::GetOutputSlot(), TensorInfo::GetShape(), IOutputSlot::GetTensorInfo(), OutputSlot::GetTensorInfo(), QuantizedLstmLayer::InferOutputShapes(), QuantizedLstmParameters::m_CellBias, QuantizedLstmParameters::m_ForgetGateBias, QuantizedLstmParameters::m_InputGateBias, QuantizedLstmParameters::m_InputToCellWeights, QuantizedLstmParameters::m_InputToForgetWeights, QuantizedLstmParameters::m_InputToInputWeights, QuantizedLstmParameters::m_InputToOutputWeights, QuantizedLstmParameters::m_OutputGateBias, QuantizedLstmLayer::m_QuantizedLstmParameters, QuantizedLstmParameters::m_RecurrentToCellWeights, QuantizedLstmParameters::m_RecurrentToForgetWeights, QuantizedLstmParameters::m_RecurrentToInputWeights, QuantizedLstmParameters::m_RecurrentToOutputWeights, and Layer::VerifyLayerConnections().
QuantizedLstmParameters m_QuantizedLstmParameters |
Definition at line 49 of file QuantizedLstmLayer.hpp.
Referenced by QuantizedLstmLayer::Accept(), Network::AddQuantizedLstmLayer(), QuantizedLstmLayer::Clone(), QuantizedLstmLayer::CreateWorkload(), QuantizedLstmLayer::GetConstantTensorsByRef(), and QuantizedLstmLayer::ValidateTensorShapesFromInputs().