From 0ae5de9124a0094e656244ad2f807c084966fc04 Mon Sep 17 00:00:00 2001 From: Isabella Gottardi Date: Thu, 14 Mar 2019 10:32:11 +0000 Subject: COMPMID-1995: Prepare Graph to support different input/output quantization info - Added support for different input/output qinfo in ActivationLayer and DepthwiseConv - Added support for different input/output qinfo in ConcatenateLayer introducing ConcatDescriptor - Added reshape validate - Allow OutputLayer to return a specific connection index from the input - Not run Inplace and Depth mutator when input/output quantization info are different Change-Id: I03f5e416fc43ddd284e1501887202a3145f76d8a Signed-off-by: Isabella Gottardi Reviewed-on: https://review.mlplatform.org/c/852 Comments-Addressed: Arm Jenkins Tested-by: Arm Jenkins Reviewed-by: Michele Di Giorgio Reviewed-by: Georgios Pinitas --- src/graph/backends/CL/CLNodeValidator.cpp | 2 ++ src/graph/backends/NEON/NEFunctionFactory.cpp | 6 ++++-- src/graph/backends/NEON/NENodeValidator.cpp | 2 ++ 3 files changed, 8 insertions(+), 2 deletions(-) (limited to 'src/graph/backends') diff --git a/src/graph/backends/CL/CLNodeValidator.cpp b/src/graph/backends/CL/CLNodeValidator.cpp index 4b71837a49..cb8dc0a172 100644 --- a/src/graph/backends/CL/CLNodeValidator.cpp +++ b/src/graph/backends/CL/CLNodeValidator.cpp @@ -74,6 +74,8 @@ Status CLNodeValidator::validate(INode *node) return detail::validate_priorbox_layer(*polymorphic_downcast(node)); case NodeType::ReorgLayer: return detail::validate_reorg_layer(*polymorphic_downcast(node)); + case NodeType::ReshapeLayer: + return detail::validate_reshape_layer(*polymorphic_downcast(node)); case NodeType::ROIAlignLayer: return detail::validate_roi_align_layer(*polymorphic_downcast(node)); case NodeType::SliceLayer: diff --git a/src/graph/backends/NEON/NEFunctionFactory.cpp b/src/graph/backends/NEON/NEFunctionFactory.cpp index f23845c314..81c6e09f92 100644 --- a/src/graph/backends/NEON/NEFunctionFactory.cpp +++ b/src/graph/backends/NEON/NEFunctionFactory.cpp @@ -143,8 +143,10 @@ std::unique_ptr create_convolution_layerinfo()->quantization_info() << " Output QuantInfo: " << output->info()->quantization_info(); } - ARM_COMPUTE_LOG_GRAPH_INFO("Instantiated " << func_name - << " Target " << NETargetInfo::TargetType + ARM_COMPUTE_LOG_GRAPH_INFO("Instantiated " + << node.name() + << " Type: " << func_name + << " Target: " << NETargetInfo::TargetType << " Data Type: " << input->info()->data_type() << qss.str() << " Input shape: " << input->info()->tensor_shape() diff --git a/src/graph/backends/NEON/NENodeValidator.cpp b/src/graph/backends/NEON/NENodeValidator.cpp index b0feec563b..77f2e7f21d 100644 --- a/src/graph/backends/NEON/NENodeValidator.cpp +++ b/src/graph/backends/NEON/NENodeValidator.cpp @@ -74,6 +74,8 @@ Status NENodeValidator::validate(INode *node) return detail::validate_priorbox_layer(*polymorphic_downcast(node)); case NodeType::ReorgLayer: return detail::validate_reorg_layer(*polymorphic_downcast(node)); + case NodeType::ReshapeLayer: + return detail::validate_reshape_layer(*polymorphic_downcast(node)); case NodeType::ROIAlignLayer: return ARM_COMPUTE_CREATE_ERROR(arm_compute::ErrorCode::RUNTIME_ERROR, "Unsupported operation : ROIAlignLayer"); case NodeType::SliceLayer: -- cgit v1.2.1