diff options
author | ramelg01 <ramy.elgammal@arm.com> | 2022-05-04 15:12:21 +0100 |
---|---|---|
committer | Pablo Marquez Tello <pablo.tello@arm.com> | 2022-05-05 08:54:15 +0000 |
commit | 638b7e4f6b1125b74f27f90dea2cd23eca52bfe8 (patch) | |
tree | 68cf88a73c990ad580f200b6ddff76d50860c1ea /src/core/NEON/kernels/arm_conv/depthwise/depthwise_depthfirst.hpp | |
parent | facd9dd4c75feb886240a2b55cefe55ccf773f63 (diff) | |
download | ComputeLibrary-638b7e4f6b1125b74f27f90dea2cd23eca52bfe8.tar.gz |
Fix for Neon™ Depthwise Android P VTS test failure
Resolves: COMPMID-5237
Signed-off-by: ramy.elgammal@arm.com
Change-Id: Ib1f5e262030e915a038cef587001708bbaf14c56
Reviewed-on: https://review.mlplatform.org/c/ml/ComputeLibrary/+/7508
Reviewed-by: David Mansell
Reviewed-by: Pablo Marquez Tello <pablo.tello@arm.com>
Comments-Addressed: Arm Jenkins <bsgcomp@arm.com>
Tested-by: Arm Jenkins <bsgcomp@arm.com>
Diffstat (limited to 'src/core/NEON/kernels/arm_conv/depthwise/depthwise_depthfirst.hpp')
-rw-r--r-- | src/core/NEON/kernels/arm_conv/depthwise/depthwise_depthfirst.hpp | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/src/core/NEON/kernels/arm_conv/depthwise/depthwise_depthfirst.hpp b/src/core/NEON/kernels/arm_conv/depthwise/depthwise_depthfirst.hpp index 6905076357..70b12919b0 100644 --- a/src/core/NEON/kernels/arm_conv/depthwise/depthwise_depthfirst.hpp +++ b/src/core/NEON/kernels/arm_conv/depthwise/depthwise_depthfirst.hpp @@ -437,7 +437,9 @@ class DepthwiseDepthfirst const auto input_i = static_cast<unsigned int>(ii < 0 ? 0 : ii); const auto input_j = output_j * this->m_args.stride_cols - this->m_args.padding.left; - const auto valid_input_rows = std::min(strat->get_input_rows(), this->m_args.input_rows - input_i); + // Valid input rows is the smallest of the input rows that aren't padding for this tile, and the number of rows + // available. + const auto valid_input_rows = std::min(strat->get_input_rows() - input_pad_top, this->m_args.input_rows - input_i); const auto valid_output_rows = std::min(strat->get_output_rows(), this->m_args.output_rows - output_i); const auto input_point_stride = input.ld_col * this->m_strat->get_output_cols() * this->m_args.stride_cols; @@ -471,7 +473,7 @@ class DepthwiseDepthfirst // Update all unpadded pointers { auto ptr = ws->inptr_array + strat->get_input_cols() * input_pad_top; - for (auto n = input_pad_top; n < valid_input_rows; n++) + for (auto n = input_pad_top; n < (valid_input_rows + input_pad_top); n++) { for (auto m = 0u; m < strat->get_input_cols(); m++) { |