aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorVidhya Sudhan Loganathan <vidhyasudhan.loganathan@arm.com>2019-01-14 16:29:20 +0000
committerVidhyaSudhan Loganathan <vidhyasudhan.loganathan@arm.com>2019-01-15 15:45:42 +0000
commit7a63e79219e4f2b0c7b7c0c98fee25cd20dde3ec (patch)
tree7b43dfbc6adbb3e8ccd7985efff9b564027a6807
parentbacfec5ecc3bd737c3d4eb2b0c165e0e55cc61f0 (diff)
downloadComputeLibrary-7a63e79219e4f2b0c7b7c0c98fee25cd20dde3ec.tar.gz
COMPMID-1886 : Enable CLTuner for CLScale
Change-Id: If92dc7fc46accdef5e67f96a91a8428c18db2028 Reviewed-on: https://review.mlplatform.org/517 Tested-by: Arm Jenkins <bsgcomp@arm.com> Reviewed-by: Georgios Pinitas <georgios.pinitas@arm.com>
-rw-r--r--src/core/CL/kernels/CLScaleKernel.cpp17
1 files changed, 16 insertions, 1 deletions
diff --git a/src/core/CL/kernels/CLScaleKernel.cpp b/src/core/CL/kernels/CLScaleKernel.cpp
index 96f4df88c1..c56cc6df44 100644
--- a/src/core/CL/kernels/CLScaleKernel.cpp
+++ b/src/core/CL/kernels/CLScaleKernel.cpp
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2016-2018 ARM Limited.
+ * Copyright (c) 2016-2019 ARM Limited.
*
* SPDX-License-Identifier: MIT
*
@@ -227,6 +227,21 @@ void CLScaleKernel::configure(const ICLTensor *input, ICLTensor *output, Interpo
_kernel.setArg<float>(idx++, input_height);
_kernel.setArg<float>(idx++, scale_x);
_kernel.setArg<float>(idx++, scale_y);
+
+ // Set config_id for enabling LWS tuning
+ _config_id = "scale_";
+ _config_id += support::cpp11::to_string(border.right);
+ _config_id += (border_mode == BorderMode::REPLICATE? "Bord_rep":"");
+ _config_id += (sampling_policy == SamplingPolicy::CENTER ? "center" : "topleft");
+ _config_id += (is_nhwc? "nhwc":"nchw");
+ _config_id += "_";
+ _config_id += support::cpp11::to_string(output->info()->dimension(0));
+ _config_id += "_";
+ _config_id += support::cpp11::to_string(output->info()->dimension(1));
+ _config_id += "_";
+ _config_id += support::cpp11::to_string(output->info()->dimension(2));
+ _config_id += "_";
+ _config_id += support::cpp11::to_string(output->info()->dimension(3));
}
void CLScaleKernel::run(const Window &window, cl::CommandQueue &queue)