diff --git a/mindspore/ccsrc/backend/kernel_compiler/cpu/rank_cpu_kernel.cc b/mindspore/ccsrc/backend/kernel_compiler/cpu/rank_cpu_kernel.cc index 62340fae844ba5562bf260ed88559ef38e91b5ad..63e719fcac56cd5953b1d33c0f4c956b383491ee 100644 --- a/mindspore/ccsrc/backend/kernel_compiler/cpu/rank_cpu_kernel.cc +++ b/mindspore/ccsrc/backend/kernel_compiler/cpu/rank_cpu_kernel.cc @@ -82,7 +82,7 @@ void RankCpuKernel::SetFunc() { switch (method_) { case Method::Max: { func_ = [](int i, int duplicate_count, int culmutive_rank, const AxisIterator &axisIterator, - const size_t *sort_idx, float *output_addr) { + const size_t *const sort_idx, float *const output_addr) { for (int j = i - duplicate_count + 1; j < i + 1; ++j) { output_addr[axisIterator.GetPos(sort_idx[j])] = i + 1; } @@ -90,7 +90,7 @@ void RankCpuKernel::SetFunc() { } break; case Method::Min: { func_ = [](int i, int duplicate_count, int culmutive_rank, const AxisIterator &axisIterator, - const size_t *sort_idx, float *output_addr) { + const size_t *const sort_idx, float *const output_addr) { for (int j = i - duplicate_count + 1; j < i + 1; ++j) { output_addr[axisIterator.GetPos(sort_idx[j])] = i - duplicate_count + 2; } @@ -103,7 +103,7 @@ void RankCpuKernel::SetFunc() { // rank_sum = sum + duplicate_count = duplicate_count * (2 * i - duplicate_count + 3) / 2 // avg = rank_sum / duplicate_count = (2 * i - duplicate_count + 3) / 2 func_ = [](int i, int duplicate_count, int culmutive_rank, const AxisIterator &axisIterator, - const size_t *sort_idx, float *output_addr) { + const size_t *const sort_idx, float *const output_addr) { float avg = (2 * i - duplicate_count + 3) / 2.0; for (int j = i - duplicate_count + 1; j < i + 1; ++j) { output_addr[axisIterator.GetPos(sort_idx[j])] = avg; @@ -112,7 +112,7 @@ void RankCpuKernel::SetFunc() { } break; case Method::First: { func_ = [](int i, int duplicate_count, int culmutive_rank, const AxisIterator &axisIterator, - const size_t *sort_idx, float *output_addr) { + const size_t *const sort_idx, float *const output_addr) { for (int j = i - duplicate_count + 1; j < i + 1; ++j) { output_addr[axisIterator.GetPos(sort_idx[j])] = j + 1; } @@ -120,7 +120,7 @@ void RankCpuKernel::SetFunc() { } break; case Method::Dense: { func_ = [](int i, int duplicate_count, int culmutive_rank, const AxisIterator &axisIterator, - const size_t *sort_idx, float *output_addr) { + const size_t *const sort_idx, float *const output_addr) { for (int j = i - duplicate_count + 1; j < i + 1; ++j) { output_addr[axisIterator.GetPos(sort_idx[j])] = culmutive_rank; } diff --git a/mindspore/ccsrc/backend/kernel_compiler/cpu/rank_cpu_kernel.h b/mindspore/ccsrc/backend/kernel_compiler/cpu/rank_cpu_kernel.h index 50964c77d0b1fc4d9c1a4788113275764400cd34..de841f2216d644dd7b80dc33fe3314cc4da69880 100644 --- a/mindspore/ccsrc/backend/kernel_compiler/cpu/rank_cpu_kernel.h +++ b/mindspore/ccsrc/backend/kernel_compiler/cpu/rank_cpu_kernel.h @@ -60,13 +60,12 @@ class RankCpuKernel : public CPUKernel { const std::vector &outputs) override; private: - size_t rank_size_; // shape info AxisIterator axisIterator_{}; // parameters size_t axis_{0}; rank::Method method_{rank::MethodNotDefined}; - std::function func_; + std::function func_; rank::NaOption option_{rank::OptionNotDefined}; bool ascending_{true}; bool pct_{false};