From d2fab7315bac3a586f2f1b1c8d64f2441f89ca64 Mon Sep 17 00:00:00 2001 From: Gian Marco Iodice Date: Fri, 2 Mar 2018 11:18:12 +0000 Subject: COMPMID-935 - Implementing Convolution with Winograd on OpenCL (part 4) Implemented Winograd Output Transform (2x2,3x3) on OpenCL Implemented CLWinogradConvolutionLayer on OpenCL Change-Id: I6a113fc5f052ca07f878d2b800d2ab003f84af65 Reviewed-on: https://eu-gerrit-1.euhpc.arm.com/125148 Reviewed-by: Georgios Pinitas Tested-by: Jenkins --- src/core/CL/kernels/CLGEMMTranspose1xWKernel.cpp | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) (limited to 'src/core/CL/kernels/CLGEMMTranspose1xWKernel.cpp') diff --git a/src/core/CL/kernels/CLGEMMTranspose1xWKernel.cpp b/src/core/CL/kernels/CLGEMMTranspose1xWKernel.cpp index 5489fde818..f69a39e4ad 100644 --- a/src/core/CL/kernels/CLGEMMTranspose1xWKernel.cpp +++ b/src/core/CL/kernels/CLGEMMTranspose1xWKernel.cpp @@ -76,15 +76,18 @@ std::pair validate_and_configure_window(ITensorInfo *input, ITen } AccessWindowHorizontal input_access(input, 0, num_elems_processed_per_iteration); - window_changed = window_changed || update_window_and_padding(win, input_access); // Configure window in case of configured output if(output->total_size() != 0) { AccessWindowTranspose output_access(output, 0, 0, num_elems_processed_per_iteration, 1, scale_x, 1.f / scale_x); - window_changed = window_changed || update_window_and_padding(win, output_access); + window_changed = window_changed || update_window_and_padding(win, input_access, output_access); output_access.set_valid_region(win, ValidRegion(Coordinates(0, 0), input->tensor_shape())); } + else + { + window_changed = window_changed || update_window_and_padding(win, input_access); + } // Collapse along the Z direction Window collapsed = win.collapse(win, Window::DimZ); -- cgit v1.2.1