From dbfc2dc182f90af5cad6fc283fff817ac7258a19 Mon Sep 17 00:00:00 2001 From: Georgios Pinitas Date: Tue, 2 Apr 2019 12:51:21 +0100 Subject: COMPMID-2069: Rework CL ML layers to run exclusively on CL. Change-Id: If6cbf7a2e013d264e5d7f7cb54143ce32ba2687b Signed-off-by: Georgios Pinitas Reviewed-on: https://review.mlplatform.org/c/934 Comments-Addressed: Arm Jenkins Reviewed-by: Isabella Gottardi Reviewed-by: Gian Marco Iodice Tested-by: Arm Jenkins --- .../CL/functions/CLDeconvolutionLayerUpsample.cpp | 28 +++++++--------------- 1 file changed, 8 insertions(+), 20 deletions(-) (limited to 'src/runtime/CL/functions/CLDeconvolutionLayerUpsample.cpp') diff --git a/src/runtime/CL/functions/CLDeconvolutionLayerUpsample.cpp b/src/runtime/CL/functions/CLDeconvolutionLayerUpsample.cpp index ce8667d656..c66dff01c5 100644 --- a/src/runtime/CL/functions/CLDeconvolutionLayerUpsample.cpp +++ b/src/runtime/CL/functions/CLDeconvolutionLayerUpsample.cpp @@ -1,5 +1,5 @@ /* - * Copyright (c) 2017-2018 ARM Limited. + * Copyright (c) 2017-2019 ARM Limited. * * SPDX-License-Identifier: MIT * @@ -27,14 +27,11 @@ #include "arm_compute/core/Utils.h" #include "arm_compute/runtime/CL/CLScheduler.h" -#include -#include -#include - -using namespace arm_compute; - +namespace arm_compute +{ CLDeconvolutionLayerUpsample::CLDeconvolutionLayerUpsample() // NOLINT : _upsample(), + _memset(), _output(nullptr) { } @@ -51,22 +48,13 @@ void CLDeconvolutionLayerUpsample::configure(ICLTensor *input, ICLTensor *output ARM_COMPUTE_ERROR_ON_NULLPTR(input, output); _output = output; + _memset.configure(_output, PixelValue(0, _output->info()->data_type(), _output->info()->quantization_info())); _upsample.configure(input, _output, inner_border, info); } void CLDeconvolutionLayerUpsample::run() { - _output->map(CLScheduler::get().queue(), true); - if(is_data_type_quantized_asymmetric(_output->info()->data_type())) - { - const uint8_t quantized_zero = _output->info()->quantization_info().offset; - std::fill_n(_output->buffer(), _output->info()->total_size(), quantized_zero); - } - else - { - memset(_output->buffer(), 0, _output->info()->total_size()); - } - _output->unmap(CLScheduler::get().queue()); - - CLScheduler::get().enqueue(_upsample, false); + CLScheduler::get().enqueue(_memset, false); + CLScheduler::get().enqueue(_upsample, true); } +} // namespace arm_compute \ No newline at end of file -- cgit v1.2.1