1be168c0dSopenharmony_ciFrom 19edf6b71a81c21bcaa15e6e564fc6ad56a188da Mon Sep 17 00:00:00 2001 2be168c0dSopenharmony_ciFrom: rabbit-fgh <2955722401@qq.com> 3be168c0dSopenharmony_ciDate: Thu, 22 Aug 2024 11:22:18 +0800 4be168c0dSopenharmony_ciSubject: [PATCH] fix split problems 5be168c0dSopenharmony_ci 6be168c0dSopenharmony_ci--- 7be168c0dSopenharmony_ci .../plugin/device/cpu/kernel/nnacl/infer/split_infer.c | 10 ++++++---- 8be168c0dSopenharmony_ci 1 file changed, 6 insertions(+), 4 deletions(-) 9be168c0dSopenharmony_ci 10be168c0dSopenharmony_cidiff --git a/mindspore/ccsrc/plugin/device/cpu/kernel/nnacl/infer/split_infer.c b/mindspore/ccsrc/plugin/device/cpu/kernel/nnacl/infer/split_infer.c 11be168c0dSopenharmony_ciindex b017e259..1d3aabe1 100644 12be168c0dSopenharmony_ci--- a/mindspore/ccsrc/plugin/device/cpu/kernel/nnacl/infer/split_infer.c 13be168c0dSopenharmony_ci+++ b/mindspore/ccsrc/plugin/device/cpu/kernel/nnacl/infer/split_infer.c 14be168c0dSopenharmony_ci@@ -34,11 +34,13 @@ int UpdateSplitSize(const TensorC *const *inputs, size_t inputs_size, SplitParam 15be168c0dSopenharmony_ci } 16be168c0dSopenharmony_ci if (param->split_count_ == 0) { 17be168c0dSopenharmony_ci const TensorC *input = inputs[0]; 18be168c0dSopenharmony_ci- if (input->shape_[param->split_dim_] % param->num_split_ != 0) { 19be168c0dSopenharmony_ci- return NNACL_ERR; 20be168c0dSopenharmony_ci- } 21be168c0dSopenharmony_ci+ int32_t split_chunk_size = UP_DIV(input->shape_[param->split_dim_], param->num_split_); 22be168c0dSopenharmony_ci for (int i = 0; i < param->num_split_; ++i) { 23be168c0dSopenharmony_ci- param->split_sizes_[i] = input->shape_[param->split_dim_] / param->num_split_; 24be168c0dSopenharmony_ci+ if (i != param->num_split_ - 1) { 25be168c0dSopenharmony_ci+ param->split_sizes_[i] = split_chunk_size; 26be168c0dSopenharmony_ci+ } else { 27be168c0dSopenharmony_ci+ param->split_sizes_[i] = input->shape_[param->split_dim_] - split_chunk_size * i; 28be168c0dSopenharmony_ci+ } 29be168c0dSopenharmony_ci } 30be168c0dSopenharmony_ci } 31be168c0dSopenharmony_ci return NNACL_OK; 32be168c0dSopenharmony_ci-- 33be168c0dSopenharmony_ci2.45.1.windows.1 34be168c0dSopenharmony_ci 35