diff --git a/paddle/phi/kernels/impl/baddbmm_grad_kernel_impl.h b/paddle/phi/kernels/impl/baddbmm_grad_kernel_impl.h index 67bc4e35c8876d..f9cf417adaa46f 100644 --- a/paddle/phi/kernels/impl/baddbmm_grad_kernel_impl.h +++ b/paddle/phi/kernels/impl/baddbmm_grad_kernel_impl.h @@ -180,28 +180,17 @@ void BaddbmmGradKernel(const Context& dev_ctx, .reshape(eigen_dinput_shape) .template cast(); } - } else { - // The VCOPY does not support the float16, bfloat16 - if (!is_float16_or_bfloat16) { - mt_blas.VCOPY( - total_elems, out_grad.data(), input_grad->data()); - } else { - funcs::ForRange for_range(dev_ctx, total_elems); - BCopyOrScaleFunctor functor( - 1, out_grad.data(), input_grad->data(), total_elems); - for_range(functor); - } - } - - // The SCAL does not support the float16, bfloat16 - if (!is_float16_or_bfloat16) { - mt_blas.SCAL(total_elems, beta, input_grad->data()); } else { funcs::ForRange for_range(dev_ctx, total_elems); BCopyOrScaleFunctor functor( - beta, input_grad->data(), input_grad->data(), total_elems); + 1, out_grad.data(), input_grad->data(), total_elems); for_range(functor); } + + funcs::ForRange for_range(dev_ctx, total_elems); + BCopyOrScaleFunctor functor( + beta, input_grad->data(), input_grad->data(), total_elems); + for_range(functor); } if (x_grad) { dev_ctx.template Alloc(x_grad);