diff options
author | John Richardson <john.richardson@arm.com> | 2017-12-14 15:41:13 +0000 |
---|---|---|
committer | Anthony Barbier <anthony.barbier@arm.com> | 2018-11-02 16:42:33 +0000 |
commit | 384a43e9a37b1616d83181de8a46c9934bfdc82e (patch) | |
tree | bd2b1d2a6c0e6b7b72b055462e0b50b0c02ca80e /src/core | |
parent | 6387543b0ad0fbfa77d988437b4ad159803de7c3 (diff) | |
download | ComputeLibrary-384a43e9a37b1616d83181de8a46c9934bfdc82e.tar.gz |
COMPMID-579: Port Derivative to new validation
Change-Id: Iecbfa3ebab890c778fb475403466d6fb168e9968
Reviewed-on: https://eu-gerrit-1.euhpc.arm.com/113357
Reviewed-by: Georgios Pinitas <georgios.pinitas@arm.com>
Tested-by: Jenkins <bsgcomp@arm.com>
Diffstat (limited to 'src/core')
-rw-r--r-- | src/core/CL/kernels/CLDerivativeKernel.cpp | 6 | ||||
-rw-r--r-- | src/core/NEON/kernels/NEDerivativeKernel.cpp | 8 |
2 files changed, 10 insertions, 4 deletions
diff --git a/src/core/CL/kernels/CLDerivativeKernel.cpp b/src/core/CL/kernels/CLDerivativeKernel.cpp index 36ba06d528..5bfe75140b 100644 --- a/src/core/CL/kernels/CLDerivativeKernel.cpp +++ b/src/core/CL/kernels/CLDerivativeKernel.cpp @@ -96,11 +96,13 @@ void CLDerivativeKernel::configure(const ICLTensor *input, ICLTensor *output_x, AccessWindowHorizontal output_y_access(output_y == nullptr ? nullptr : output_y->info(), 0, num_elems_processed_per_iteration); if(_run_derivative_x && _run_derivative_y) { - input_access = AccessWindowRectangle(input->info(), -border_size().left, -border_size().top, num_elems_processed_per_iteration, num_read_rows_per_iteration); + // TODO(COMPMID-415) Fix x-access input bug in CL kernel instead of '+2' + input_access = AccessWindowRectangle(input->info(), -border_size().left, -border_size().top, num_elems_processed_per_iteration + 2, num_read_rows_per_iteration); } else if(_run_derivative_x) { - input_access = AccessWindowHorizontal(input->info(), -border_size().left, num_elems_processed_per_iteration); + // TODO(COMPMID-415) Fix x-access input bug in CL kernel instead of '+2' + input_access = AccessWindowHorizontal(input->info(), -border_size().left, num_elems_processed_per_iteration + 2); } else if(_run_derivative_y) { diff --git a/src/core/NEON/kernels/NEDerivativeKernel.cpp b/src/core/NEON/kernels/NEDerivativeKernel.cpp index a5680ebbf9..1e0397ddb2 100644 --- a/src/core/NEON/kernels/NEDerivativeKernel.cpp +++ b/src/core/NEON/kernels/NEDerivativeKernel.cpp @@ -80,9 +80,13 @@ void NEDerivativeKernel::configure(const ITensor *input, ITensor *output_x, ITen AccessWindowHorizontal out_x_access(output_x == nullptr ? nullptr : output_x->info(), 0, num_elems_processed_per_iteration); AccessWindowHorizontal out_y_access(output_y == nullptr ? nullptr : output_y->info(), 0, num_elems_processed_per_iteration); - AccessWindowHorizontal in_x_access(input->info(), -border_size().left, num_elems_processed_per_iteration); + + // TODO(COMPMID-415) Fix x-access input bug in NEON kernel instead of '+2' + AccessWindowHorizontal in_x_access(input->info(), -border_size().left, num_elems_processed_per_iteration + 2); AccessWindowRectangle in_y_access(input->info(), 0, -border_size().left, num_elems_processed_per_iteration, num_rows_read_per_iteration); - AccessWindowRectangle in_xy_access(input->info(), -border_size().left, -border_size().top, num_elems_processed_per_iteration, num_rows_read_per_iteration); + + // TODO(COMPMID-415) Fix x-access input bug in NEON kernel instead of '+2' + AccessWindowRectangle in_xy_access(input->info(), -border_size().left, -border_size().top, num_elems_processed_per_iteration + 2, num_rows_read_per_iteration); if(run_der_x && run_der_y) { |