From ceff0f9a991b693f568c25b1e0933582301082e7 Mon Sep 17 00:00:00 2001 From: Georgios Pinitas Date: Mon, 19 Mar 2018 19:57:01 +0000 Subject: COMPMID-1016: Optimize kernel reconfiguration Optimizes kernel reconfiguration when memory manager is used. Note that this works only if every sub-sequent reconfigurations leads to sizes less than the first one. Change-Id: I08898e99929c3756147a02979b726c2380b6e11d Reviewed-on: https://eu-gerrit-1.euhpc.arm.com/125114 Reviewed-by: Anthony Barbier Tested-by: Jenkins --- src/runtime/GLES_COMPUTE/functions/GCNormalizationLayer.cpp | 2 ++ 1 file changed, 2 insertions(+) (limited to 'src/runtime/GLES_COMPUTE/functions/GCNormalizationLayer.cpp') diff --git a/src/runtime/GLES_COMPUTE/functions/GCNormalizationLayer.cpp b/src/runtime/GLES_COMPUTE/functions/GCNormalizationLayer.cpp index 13213d2b54..b2e69ee8c6 100644 --- a/src/runtime/GLES_COMPUTE/functions/GCNormalizationLayer.cpp +++ b/src/runtime/GLES_COMPUTE/functions/GCNormalizationLayer.cpp @@ -57,10 +57,12 @@ void GCNormalizationLayer::configure(const IGCTensor *input, IGCTensor *output, void GCNormalizationLayer::run() { _memory_group.acquire(); + GCScheduler::get().dispatch(_multiply_kernel, false); GCScheduler::get().memory_barrier(); GCScheduler::get().dispatch(_border_handler, false); GCScheduler::get().memory_barrier(); GCScheduler::get().dispatch(_norm_kernel, true); + _memory_group.release(); } -- cgit v1.2.1