COMPMID-1188: Static tuning of CLScale
Change-Id: Icf1cc00d9861fdb8766d0b8fd33ca90833863927
Reviewed-on: https://eu-gerrit-1.euhpc.arm.com/144830
Reviewed-by: Anthony Barbier <anthony.barbier@arm.com>
Tested-by: Jenkins <bsgcomp@arm.com>
diff --git a/src/runtime/CL/functions/CLScale.cpp b/src/runtime/CL/functions/CLScale.cpp
index 7ef55f9..4ff9763 100644
--- a/src/runtime/CL/functions/CLScale.cpp
+++ b/src/runtime/CL/functions/CLScale.cpp
@@ -27,6 +27,7 @@
#include "arm_compute/core/CL/kernels/CLScaleKernel.h"
#include "arm_compute/core/Error.h"
#include "arm_compute/core/Validate.h"
+#include "arm_compute/runtime/CL/CLScheduler.h"
#include "support/ToolchainSupport.h"
using namespace arm_compute;
@@ -34,9 +35,13 @@
void CLScale::configure(ICLTensor *input, ICLTensor *output, InterpolationPolicy policy, BorderMode border_mode, PixelValue constant_border_value, SamplingPolicy sampling_policy)
{
auto k = arm_compute::support::cpp14::make_unique<CLScaleKernel>();
+ k->set_target(CLScheduler::get().target());
k->configure(input, output, policy, border_mode, sampling_policy);
_kernel = std::move(k);
+ // Tune kernels
+ CLScheduler::get().tune_kernel_static(*_kernel);
+
// In the case of NHWC we can't have undefined border mode as this would require to access elements outside z dimension,
// so we treat it like border constant.
if(border_mode == BorderMode::UNDEFINED && input->info()->data_layout() == DataLayout::NHWC)