aboutsummaryrefslogtreecommitdiff
path: root/src/armnn/DynamicQuantizationVisitor.cpp
diff options
context:
space:
mode:
authorPablo Tello <pablo.tello@arm.com>2020-03-12 10:58:39 +0000
committerPablo Tello <pablo.tello@arm.com>2020-03-16 14:22:58 +0000
commit5c391dcdc3dd2c4e0f246be3eeb7a089d3c9323d (patch)
tree392fbbc9849fdd34353a295cb516a72cb0663374 /src/armnn/DynamicQuantizationVisitor.cpp
parentfdad393d5611dad69f65f9765c9472fc41cbcfe4 (diff)
downloadarmnn-5c391dcdc3dd2c4e0f246be3eeb7a089d3c9323d.tar.gz
MLCE-161: Added support for NormalizationLayer in ArmnnQuantizer.
* Improved error reporting by using VisitorThrowingPolicy in DynamicQuantizationVisitor. Change-Id: I8a7d0975d448e6c2b6efb5f315ac255eec29f7a2 Signed-off-by: Pablo Tello <pablo.tello@arm.com>
Diffstat (limited to 'src/armnn/DynamicQuantizationVisitor.cpp')
-rw-r--r--src/armnn/DynamicQuantizationVisitor.cpp31
1 files changed, 30 insertions, 1 deletions
diff --git a/src/armnn/DynamicQuantizationVisitor.cpp b/src/armnn/DynamicQuantizationVisitor.cpp
index 862a926abc..0b03a3861d 100644
--- a/src/armnn/DynamicQuantizationVisitor.cpp
+++ b/src/armnn/DynamicQuantizationVisitor.cpp
@@ -83,9 +83,28 @@ void DynamicQuantizationVisitor::VisitNonCalibratedLayers() {
}
}
-void DynamicQuantizationVisitor::VisitAdditionLayer(const IConnectableLayer* layer, const char* name)
+void DynamicQuantizationVisitor::VisitAdditionLayer(const IConnectableLayer* layer,
+ const char* name)
+{
+ IgnoreUnused(name);
+ SetRange(layer, 0, -20.f, 20.f);
+ AddToCalibratedLayers(layer);
+}
+
+void DynamicQuantizationVisitor::VisitAbsLayer(const IConnectableLayer* layer,
+ const char* name)
+{
+ IgnoreUnused(name);
+ SetRange(layer, 0, -20.f, 20.f);
+ AddToCalibratedLayers(layer);
+}
+
+void DynamicQuantizationVisitor::VisitArgMinMaxLayer(const IConnectableLayer* layer,
+ const ArgMinMaxDescriptor& desc,
+ const char* name)
{
IgnoreUnused(name);
+ IgnoreUnused(desc);
SetRange(layer, 0, -20.f, 20.f);
AddToCalibratedLayers(layer);
}
@@ -108,6 +127,16 @@ void DynamicQuantizationVisitor::VisitBatchNormalizationLayer(const IConnectable
AddToCalibratedLayers(layer);
}
+void DynamicQuantizationVisitor::VisitNormalizationLayer(const IConnectableLayer* layer,
+ const NormalizationDescriptor& desc,
+ const char* name)
+{
+ IgnoreUnused(desc);
+ IgnoreUnused(name);
+ SetRange(layer, 0, -15.0f, 15.0f);
+ AddToCalibratedLayers(layer);
+}
+
void DynamicQuantizationVisitor::VisitConvolution2dLayer(const IConnectableLayer* layer,
const Convolution2dDescriptor& convolution2dDescriptor,
const ConstTensor& weights,