From 5420b28d54c5238ed4c4aa2ccf02a7c3855c6760 Mon Sep 17 00:00:00 2001 From: Gian Marco Date: Wed, 29 Nov 2017 10:41:38 +0000 Subject: COMPMID-710 - Fix CLTranspose and NETranspose when the input shape is a vector Fixed replacing AccessWindowTranspose with AccessWindowStatic due to the wrong padding calculation in the X direction within AccessWindowTranspose. AccessWindowTranspose should be fixed with COMPMID-708 Change-Id: I665e130b897a213ae2bf9da4bf092dd491fa00c6 Reviewed-on: https://eu-gerrit-1.euhpc.arm.com/111057 Tested-by: BSG Visual Compute Jenkins server to access repositories on http://mpd-gerrit.cambridge.arm.com Reviewed-by: Michel Iwaniec Reviewed-by: Georgios Pinitas --- src/core/NEON/kernels/NETransposeKernel.cpp | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) (limited to 'src/core/NEON/kernels/NETransposeKernel.cpp') diff --git a/src/core/NEON/kernels/NETransposeKernel.cpp b/src/core/NEON/kernels/NETransposeKernel.cpp index 1cfaafe93a..44becf5a4b 100644 --- a/src/core/NEON/kernels/NETransposeKernel.cpp +++ b/src/core/NEON/kernels/NETransposeKernel.cpp @@ -23,10 +23,11 @@ */ #include "arm_compute/core/NEON/kernels/NETransposeKernel.h" -#include "arm_compute/core/AccessWindowTranspose.h" +#include "arm_compute/core/AccessWindowStatic.h" #include "arm_compute/core/Error.h" #include "arm_compute/core/Helpers.h" #include "arm_compute/core/ITensor.h" +#include "arm_compute/core/Utils.h" #include "arm_compute/core/Validate.h" #include @@ -221,8 +222,11 @@ void NETransposeKernel::configure(const ITensor *input, ITensor *output) } // Configure kernel window - Window win = calculate_max_window(*input->info(), Steps(num_elems_processed_per_iteration, num_elems_processed_per_iteration)); - AccessWindowTranspose output_access(output->info(), 0, 0, num_elems_processed_per_iteration, num_elems_processed_per_iteration); + Window win = calculate_max_window(*input->info(), Steps(num_elems_processed_per_iteration, num_elems_processed_per_iteration)); + + // TODO (COMPMID-708): Replace AccessWindowStatic with AccessWindowTranspose + AccessWindowStatic output_access(output->info(), 0, 0, ceil_to_multiple(output->info()->dimension(0), num_elems_processed_per_iteration), ceil_to_multiple(output->info()->dimension(1), + num_elems_processed_per_iteration)); update_window_and_padding(win, AccessWindowRectangle(input->info(), 0, 0, num_elems_processed_per_iteration, num_elems_processed_per_iteration), -- cgit v1.2.1