X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=src%2Fcore%2FCL%2Fkernels%2FCLNonLinearFilterKernel.cpp;h=6afa5822bad09da4836ef47ee825f45cd8532fbb;hb=a437638028c216a03572593b9d4e3532df2a308d;hp=31066ec33e1594a0ef2aeb21d9c0ea5cad0a9339;hpb=68a98dc29106a4c8c34e8cac542fe0bdad4ad531;p=platform%2Fupstream%2Farmcl.git diff --git a/src/core/CL/kernels/CLNonLinearFilterKernel.cpp b/src/core/CL/kernels/CLNonLinearFilterKernel.cpp index 31066ec..6afa582 100644 --- a/src/core/CL/kernels/CLNonLinearFilterKernel.cpp +++ b/src/core/CL/kernels/CLNonLinearFilterKernel.cpp @@ -81,13 +81,17 @@ void CLNonLinearFilterKernel::configure(const ICLTensor *input, ICLTensor *outpu _kernel = static_cast(CLKernelLibrary::get().create_kernel(ss.str(), build_opts)); // Configure kernel window - constexpr unsigned int processed_elements(8); - constexpr unsigned int read_elements(16); - Window win = calculate_max_window(*input->info(), processed_elements, border_undefined, border_size()); - AccessWindowHorizontal output_access(output->info(), 0, processed_elements); - update_window_and_padding(win, - AccessWindowRectangle(input->info(), -border_size().left, -border_size().top, read_elements, mask_size), - output_access); + constexpr unsigned int num_elems_processed_per_iteration = 8; + constexpr unsigned int num_elems_read_per_iteration = 16; + const unsigned int num_rows_read_per_iteration = mask_size; + + Window win = calculate_max_window(*input->info(), num_elems_processed_per_iteration, border_undefined, border_size()); + + AccessWindowRectangle input_access(input->info(), -border_size().left, -border_size().top, num_elems_read_per_iteration, num_rows_read_per_iteration); + AccessWindowHorizontal output_access(output->info(), 0, num_elems_processed_per_iteration); + + update_window_and_padding(win, input_access, output_access); + output_access.set_valid_region(win, input->info()->valid_region(), border_undefined, border_size()); ICLKernel::configure(win);