diff --git a/paddle/phi/kernels/xpu/reduce_sum_grad_kernel.cc b/paddle/phi/kernels/xpu/reduce_sum_grad_kernel.cc index 9dc1fe92faccdedba0b1e33f23736018d0acc392..218eb25c5c98a86da407eb56509ed5271d8d9df4 100644 --- a/paddle/phi/kernels/xpu/reduce_sum_grad_kernel.cc +++ b/paddle/phi/kernels/xpu/reduce_sum_grad_kernel.cc @@ -32,6 +32,9 @@ void ReduceSumGradKernel(const Context& dev_ctx, dev_ctx.template Alloc(x_grad); const auto* out_data = out_grad.data(); auto* x_grad_data = x_grad->data(); + if (dims_arr.size() == 0) { + reduce_all = true; + } const auto& input_dim_size = x.dims().size(); std::vector true_dims; for (size_t i = 0; i < dims.size(); ++i) {