From 702dc0c71f2b2830b63e3b4079ede0ef76377f0a Mon Sep 17 00:00:00 2001 From: Michalis Spyrou Date: Fri, 19 Mar 2021 15:06:07 +0000 Subject: Remove usage of valid window region CL - NHWC Resolves: COMPMID-4153 Change-Id: Ib0d60c9acaac8aaf3946c62fc2d740b5ec6cee5c Signed-off-by: Michalis Spyrou Reviewed-on: https://review.mlplatform.org/c/ml/ComputeLibrary/+/5301 Comments-Addressed: Arm Jenkins Reviewed-by: Michele Di Giorgio Reviewed-by: Georgios Pinitas Tested-by: Arm Jenkins --- .../gpu/cl/kernels/ClPixelWiseMultiplicationKernel.cpp | 16 ++++------------ 1 file changed, 4 insertions(+), 12 deletions(-) (limited to 'src/core/gpu/cl/kernels/ClPixelWiseMultiplicationKernel.cpp') diff --git a/src/core/gpu/cl/kernels/ClPixelWiseMultiplicationKernel.cpp b/src/core/gpu/cl/kernels/ClPixelWiseMultiplicationKernel.cpp index f5303379be..56997dc8ad 100644 --- a/src/core/gpu/cl/kernels/ClPixelWiseMultiplicationKernel.cpp +++ b/src/core/gpu/cl/kernels/ClPixelWiseMultiplicationKernel.cpp @@ -95,9 +95,7 @@ Status validate_arguments(const ITensorInfo *src1, const ITensorInfo *src2, cons std::pair validate_and_configure_window(ITensorInfo *src1, ITensorInfo *src2, ITensorInfo *dst) { - const std::pair broadcast_pair = ITensorInfo::broadcast_shape_and_valid_region(*src1, *src2); - const TensorShape &out_shape = broadcast_pair.first; - const ValidRegion &valid_region = broadcast_pair.second; + const TensorShape &out_shape = TensorShape::broadcast_shape(src1->tensor_shape(), src2->tensor_shape()); // Auto initialize dst if not initialized { @@ -125,7 +123,7 @@ std::pair validate_and_configure_window(ITensorInfo *src1, ITens } } - Window win = calculate_max_window(valid_region, Steps(num_elems_processed_per_iteration)); + Window win = calculate_max_window(out_shape, Steps(num_elems_processed_per_iteration)); Window win_input1 = win.broadcast_if_dimension_le_one(*src1); Window win_input2 = win.broadcast_if_dimension_le_one(*src2); @@ -137,8 +135,6 @@ std::pair validate_and_configure_window(ITensorInfo *src1, ITens || update_window_and_padding(win_input2, input2_access) || update_window_and_padding(win, output_access); - output_access.set_valid_region(win, valid_region); - Status err = (window_changed) ? ARM_COMPUTE_CREATE_ERROR(ErrorCode::RUNTIME_ERROR, "Insufficient Padding!") : Status{}; return std::make_pair(err, win); } @@ -349,15 +345,13 @@ Status validate_arguments_complex(const ITensorInfo *src1, const ITensorInfo *sr std::pair validate_and_configure_window_complex(ITensorInfo *src1, ITensorInfo *src2, ITensorInfo *dst) { - const std::pair broadcast_pair = ITensorInfo::broadcast_shape_and_valid_region(*src1, *src2); - const TensorShape &out_shape = broadcast_pair.first; - const ValidRegion &valid_region = broadcast_pair.second; + const TensorShape &out_shape = TensorShape::broadcast_shape(src1->tensor_shape(), src2->tensor_shape()); // Auto initialize dst if not initialized const TensorInfo out_info(out_shape, src1->num_channels(), src1->data_type()); auto_init_if_empty(*dst, out_info); - Window win = calculate_max_window(valid_region, Steps(num_elems_processed_per_iteration_complex)); + Window win = calculate_max_window(out_shape, Steps(num_elems_processed_per_iteration_complex)); Window win_input1 = win.broadcast_if_dimension_le_one(*src1); Window win_input2 = win.broadcast_if_dimension_le_one(*src2); @@ -369,8 +363,6 @@ std::pair validate_and_configure_window_complex(ITensorInfo *src || update_window_and_padding(win_input2, input2_access) || update_window_and_padding(win, output_access); - output_access.set_valid_region(win, valid_region); - Status err = (window_changed) ? ARM_COMPUTE_CREATE_ERROR(ErrorCode::RUNTIME_ERROR, "Insufficient Padding!") : Status{}; return std::make_pair(err, win); } -- cgit v1.2.1