34 const char* name =
nullptr)
override;
40 const char* name =
nullptr)
override;
46 const char* name =
nullptr)
override;
50 const char* name =
nullptr)
override;
56 const char *name)
override;
60 const char* name)
override;
64 const char* name =
nullptr)
override;
68 const char* name)
override;
72 const char* name =
nullptr)
override;
76 const char* name =
nullptr)
override;
80 const char* name =
nullptr)
override;
84 const char* name =
nullptr)
override;
88 const char* name =
nullptr)
override;
92 const char* name =
nullptr)
override;
96 const char* name =
nullptr)
override;
100 const char* name =
nullptr)
override;
104 const char* name =
nullptr)
override;
108 const char* name =
nullptr)
override;
117 void SetRange(
const IConnectableLayer* layer,
unsigned int outputIdx,
float min,
float max);
126 std::vector<const IConnectableLayer*> m_LayersToCalibrate;
127 std::vector<const IConnectableLayer*> m_LayersNotToCalibrate;
128 std::vector<DebugLayer*> m_DebugLayers;
130 std::vector<armnn::LayerBindingId> m_OutputLayers;
134 void RemoveDebugLayers();
void VisitSoftmaxLayer(const IConnectableLayer *layer, const SoftmaxDescriptor &softmaxDescriptor, const char *name=nullptr) override
A BatchToSpaceNdDescriptor for the BatchToSpaceNdLayer.
A tensor defined by a TensorInfo (shape and data type) and an immutable backing store.
void VisitNonCalibratedLayers()
void VisitConvolution2dLayer(const IConnectableLayer *layer, const Convolution2dDescriptor &convolution2dDescriptor, const ConstTensor &weights, const Optional< ConstTensor > &biases, const char *name=nullptr) override
An ActivationDescriptor for the ActivationLayer.
A BatchNormalizationDescriptor for the BatchNormalizationLayer.
~DynamicQuantizationVisitor()=default
void VisitSpaceToBatchNdLayer(const IConnectableLayer *layer, const SpaceToBatchNdDescriptor &spaceToBatchNdDescriptor, const char *name=nullptr) override
A ViewsDescriptor for the SplitterLayer. Descriptor to configure the splitting process. Number of Views must be equal to the number of outputs, and their order must match - e.g. first view corresponds to the first output, second view to the second output, etc.
void VisitPooling2dLayer(const IConnectableLayer *layer, const Pooling2dDescriptor &pooling2dDescriptor, const char *name) override
void VisitBatchToSpaceNdLayer(const IConnectableLayer *layer, const BatchToSpaceNdDescriptor &batchToSpaceNdDescriptor, const char *name=nullptr) override
A ReshapeDescriptor for the ReshapeLayer.
void VisitConstantLayer(const IConnectableLayer *layer, const ConstTensor &input, const char *name=nullptr) override
void VisitPermuteLayer(const IConnectableLayer *layer, const PermuteDescriptor &permuteDescriptor, const char *name) override
DynamicQuantizationVisitor(RangeTracker &rangeTracker, Graph &graph)
void VisitStridedSliceLayer(const IConnectableLayer *layer, const StridedSliceDescriptor &stridedSliceDescriptor, const char *name=nullptr) override
void FinishVisit() override
A FullyConnectedDescriptor for the FullyConnectedLayer.
const std::vector< armnn::LayerBindingId > & GetOutputLayers()
void VisitReshapeLayer(const IConnectableLayer *layer, const ReshapeDescriptor &reshapeDescriptor, const char *name=nullptr) override
A ResizeBilinearDescriptor for the ResizeBilinearLayer.
A SoftmaxDescriptor for the SoftmaxLayer.
void VisitOutputLayer(const IConnectableLayer *layer, LayerBindingId id, const char *name=nullptr) override
void VisitAdditionLayer(const IConnectableLayer *layer, const char *name=nullptr) override
Functions to set the Range on a per-layer-type basis.
Interface for a layer that is connectable to other layers via InputSlots and OutputSlots.
A Pooling2dDescriptor for the Pooling2dLayer.
void VisitFullyConnectedLayer(const IConnectableLayer *layer, const FullyConnectedDescriptor &desc, const ConstTensor &weights, const Optional< ConstTensor > &biases, const char *name) override
A DepthwiseConvolution2dDescriptor for the DepthwiseConvolution2dLayer.
void VisitBatchNormalizationLayer(const IConnectableLayer *layer, const BatchNormalizationDescriptor &desc, const ConstTensor &mean, const ConstTensor &variance, const ConstTensor &beta, const ConstTensor &gamma, const char *name=nullptr) override
A PermuteDescriptor for the PermuteLayer.
A Convolution2dDescriptor for the Convolution2dLayer.
void VisitDepthwiseConvolution2dLayer(const IConnectableLayer *layer, const DepthwiseConvolution2dDescriptor &desc, const ConstTensor &weights, const Optional< ConstTensor > &biases, const char *name=nullptr) override
A SpaceToBatchNdDescriptor for the SpaceToBatchNdLayer.
void VisitConcatLayer(const IConnectableLayer *layer, const ConcatDescriptor &originsDescriptor, const char *name=nullptr) override
void VisitInputLayer(const IConnectableLayer *layer, LayerBindingId id, const char *name=nullptr) override
Visitor class to establish min/max ranges based on the type of the layer.
void VisitSplitterLayer(const IConnectableLayer *layer, const SplitterDescriptor &splitterDescriptor, const char *name=nullptr) override
int LayerBindingId
Type of identifiers for bindable layers (inputs, outputs).
void VisitActivationLayer(const IConnectableLayer *layer, const ActivationDescriptor &activationDescriptor, const char *name=nullptr) override
An OriginsDescriptor for the ConcatLayer. Descriptor to configure the concatenation process...
void VisitResizeBilinearLayer(const IConnectableLayer *layer, const ResizeBilinearDescriptor &resizeDesc, const char *name=nullptr) override
A StridedSliceDescriptor for the StridedSliceLayer.