From 6e9d0e048b48712f4f72d4b0a5b94a277391a357 Mon Sep 17 00:00:00 2001 From: Giorgio Arena Date: Fri, 3 Jan 2020 15:02:04 +0000 Subject: COMPMID-2856 Add PrintLayer at graph level Signed-off-by: Giorgio Arena Change-Id: I8f02bb67adae8cc7d884f2417cc9c408985f0d5a Reviewed-on: https://review.mlplatform.org/c/2546 Reviewed-by: Manuel Bottini Reviewed-by: Michele Di Giorgio Comments-Addressed: Arm Jenkins Tested-by: Arm Jenkins Reviewed-by: Georgios Pinitas --- src/graph/Workload.cpp | 17 ++++++++++++++++- 1 file changed, 16 insertions(+), 1 deletion(-) (limited to 'src/graph/Workload.cpp') diff --git a/src/graph/Workload.cpp b/src/graph/Workload.cpp index d8046c3511..0d2a405288 100644 --- a/src/graph/Workload.cpp +++ b/src/graph/Workload.cpp @@ -1,5 +1,5 @@ /* - * Copyright (c) 2018 ARM Limited. + * Copyright (c) 2018-2020 ARM Limited. * * SPDX-License-Identifier: MIT * @@ -25,6 +25,7 @@ #include "arm_compute/graph/INode.h" #include "arm_compute/graph/ITensorHandle.h" +#include "arm_compute/graph/nodes/PrintLayerNode.h" namespace arm_compute { @@ -41,6 +42,20 @@ void execute_task(ExecutionTask &task) { task.task->run(); } +#ifdef ARM_COMPUTE_ASSERTS_ENABLED + // COMPMID-3012 - Hide the printing logic from the execute_task method in the graph API + else if(task.node->type() == NodeType::PrintLayer) + { + auto print_node = dynamic_cast(task.node); + auto input_handle = print_node->input(0)->handle(); + auto transform = print_node->transform(); + + input_handle->map(true); + ITensor *input = transform ? transform(&input_handle->tensor()) : &input_handle->tensor(); + input->print(print_node->stream(), print_node->format_info()); + input_handle->unmap(); + } +#endif // ARM_COMPUTE_ASSERTS_ENABLED } void ExecutionTask::prepare() -- cgit v1.2.1