Two-Stage Gauss-Seidel Preconditioners and Smoothers for Krylov Solvers on a GPU Cluster: Preprint

Stephen Thomas, Ichitaro Yamazaki, Luc Berger-Vergiat, Brian Kelley, Jonathan Hu, Paul Mullowney, Sivasankaran Rajamanickam, Katarzyna Swirydowicz

Research output: Contribution to conferencePaper


Gauss-Seidel (GS) relaxation is often employed as a preconditioner for a Krylov solver or as a smoother for Algebraic Multigrid (AMG). However, the requisite sparse triangular solve is difficult to parallelize on many-core architectures such as graphics processing units (GPUs). In the present study, the performance of the sequential GS relaxation based on a triangular solve is compared with two-stage variants, replacing the direct triangular solve with a fixed number of inner Jacobi-Richardson (JR) iterations. When a small number of inner iterations is sufficient to maintain the Krylov convergence rate, the two-stage GS (GS2) often outperforms the sequential algorithm on many-core architectures. The GS2 algorithm is also compared with JR. When they perform the same number of ops for SpMV (e.g. three JR sweeps compared to two GS sweeps with one inner JR sweep), the GS2 iterations, and the Krylov solver preconditioned with GS2, may converge faster than the JR iterations. Moreover, for some problems (e.g. elasticity), it was found that JR may diverge with a damping factor of one, whereas two-stage GS may improve the convergence with more inner iterations. Finally, to study the performance of the two-stage smoother and preconditioner for a practical problem, these were applied to incompressible uid ow simulations on GPUs.
Original languageAmerican English
Number of pages26
StatePublished - 2022
Event2021 SIAM Annual Meeting -
Duration: 19 Jul 202123 Jul 2021


Conference2021 SIAM Annual Meeting

NREL Publication Number

  • NREL/CP-2C00-80263


  • algebraic multigrid
  • AMG
  • Gauss-Seidel
  • krylov
  • preconditioners
  • smoothers


Dive into the research topics of 'Two-Stage Gauss-Seidel Preconditioners and Smoothers for Krylov Solvers on a GPU Cluster: Preprint'. Together they form a unique fingerprint.

Cite this