From b04c37a445b7c2d0b592e45c46583048a7da7604 Mon Sep 17 00:00:00 2001 From: Yongseop Kim Date: Thu, 25 Jan 2024 08:54:11 +0900 Subject: [PATCH] Remove train pad function --- .../cker/include/cker/train/operation/Pad.h | 25 +++++-------------- compute/cker/src/train/Pad.test.cc | 4 +-- 2 files changed, 8 insertions(+), 21 deletions(-) diff --git a/compute/cker/include/cker/train/operation/Pad.h b/compute/cker/include/cker/train/operation/Pad.h index 5c42f14cdf9..a004822ac9e 100644 --- a/compute/cker/include/cker/train/operation/Pad.h +++ b/compute/cker/include/cker/train/operation/Pad.h @@ -36,19 +36,9 @@ namespace train * -> [C,2,3,C] * -> [C,C,C,C] */ -template -inline void Pad(const int32_t *padding_data, int32_t pad_rank, const Shape &input_shape, - const T *input_data, const Shape &output_shape, T *output_data, - const T *constant_value_data) -{ - // Use nnfw::cker::Pad directly - nnfw::cker::Pad(padding_data, pad_rank, input_shape, input_data, output_shape, output_data, - constant_value_data); -} - /* - * input_data(backward_output_data) will be transformed by backward of PAD operation with padding - * options to output_data(backward_input_data) + * input_data(backward_output_data) will be transformed by backward of PAD operation (Depad) with + * padding options to output_data(backward_input_data) * * input_data(backward_output_data) -> output_data(backward_input_data) * [C,C,C,C] -> [0,1] @@ -119,10 +109,9 @@ inline void Depad(const int32_t *padding_data, int32_t pad_rank, const Shape &in { for (auto h = 0; h < out_height; ++h) { - // TODO: Remove unnecessary literal value 0 const auto in_offset = - (d + padding_depth) * in_plain_size + (h + padding_top) * in_width + (0 + padding_left); - const auto out_offset = (d * out_plain_size) + (h * out_width) + (0); + (d + padding_depth) * in_plain_size + (h + padding_top) * in_width + (padding_left); + const auto out_offset = (d * out_plain_size) + (h * out_width); // copy a row of input data to output data std::memcpy(output_data + out_offset, input_data + in_offset, out_width * sizeof(T)); } @@ -152,12 +141,10 @@ inline void Depad(const int32_t *padding_data, int32_t pad_rank, const Shape &in { for (auto h = 0; h < out_height; ++h) { - // TODO: Remove unnecessary literal value 0 const auto in_offset = (c + padding_cube) * in_cube_size + (d + padding_depth) * in_plain_size + - (h + padding_top) * in_width + (0 + padding_left); - const auto out_offset = - (c * out_cube_size) + (d * out_plain_size) + (h * out_width) + (0); + (h + padding_top) * in_width + (padding_left); + const auto out_offset = (c * out_cube_size) + (d * out_plain_size) + (h * out_width); // copy a row of input data to output data std::memcpy(output_data + out_offset, input_data + in_offset, out_width * sizeof(T)); } diff --git a/compute/cker/src/train/Pad.test.cc b/compute/cker/src/train/Pad.test.cc index 7940f990633..269534f12fa 100644 --- a/compute/cker/src/train/Pad.test.cc +++ b/compute/cker/src/train/Pad.test.cc @@ -50,8 +50,8 @@ template class PadOpVerifier assert(expected_output.size() == _out_shape.FlatSize()); std::vector cacluated_output(_out_shape.FlatSize()); - nnfw::cker::train::Pad(_op_params.data, _op_params.rank, _in_shape, input.data(), _out_shape, - cacluated_output.data(), &_constant_value); + nnfw::cker::Pad(_op_params.data, _op_params.rank, _in_shape, input.data(), _out_shape, + cacluated_output.data(), &_constant_value); if (expect_eq) EXPECT_EQ(expected_output, cacluated_output);