A Comparison of Classical and AggregationBased Algebraic Multigrid Preconditioners for HighFidelity Simulation of Wind Turbine Incompressible Flows
Abstract
This paper presents a comparison of parallel strong scaling performance of classical and aggregation algebraic multigrid (AMG) preconditioners in the context of wind turbine simulations. Fluid motion is governed by the incompressible NavierStokes equations, discretized in space with controlvolume finite elements and in time with an inexact projection scheme using an implicit integrator. A discontinuousGalerkin slidingmesh algorithm captures rotor motion. The momentum equations are solved with iterative Krylov methods, preconditioned by symmetric GaussSeidel (SGS) in Trilinos and $$\ell_1$$ SGS in hypre. The masscontinuity equation is solved with GMRES preconditioned by AMG and can account for the majority of simulation time. Reducing this continuity solve time is crucial. Wind turbine simulations present two unique challenges for AMG preconditioned solvers: the computational meshes include strongly anisotropic elements, and mesh motion requires matrix reinitialization and computation of preconditioners at each time step. Detailed timing profiles are presented and analyzed, and best practices are discussed for both classical and aggregationbased AMG. Results are presented for simulations of two different wind turbines with up to 6 billion grid points on two different computer architectures. For moving mesh problems that require linearsystem reinitialization, the wellestablished strategy of amortizing preconditioner setup costs over a large number of time steps to reduce the solve time is no longer valid. Instead, results show that faster time to solution is achieved by reducing preconditioner setup costs at the expense of linearsystem solve costs. Standard smoothed aggregation with Chebyshev relaxation was found to perform poorly when compared with classical AMG in terms of solve time and robustness. However, plain aggregation was comparable to classical AMG.
 Authors:

 National Renewable Energy Lab. (NREL), Golden, CO (United States)
 Sandia National Lab. (SNLCA), Livermore, CA (United States)
 Publication Date:
 Research Org.:
 Sandia National Lab. (SNLCA), Livermore, CA (United States)
 Sponsoring Org.:
 USDOE National Nuclear Security Administration (NNSA)
 OSTI Identifier:
 1574702
 Report Number(s):
 SAND20199747J
Journal ID: ISSN 10648275; 678635
 Grant/Contract Number:
 AC0494AL85000
 Resource Type:
 Accepted Manuscript
 Journal Name:
 SIAM Journal on Scientific Computing
 Additional Journal Information:
 Journal Volume: 41; Journal Issue: 5; Journal ID: ISSN 10648275
 Publisher:
 SIAM
 Country of Publication:
 United States
 Language:
 English
 Subject:
 97 MATHEMATICS AND COMPUTING; 17 WIND ENERGY; NavierStokes; iterative solvers; algebraic multigrid; wind turbines; exascale
Citation Formats
Thomas, Stephen J., Ananthan, Shreyas, Yellapantula, Shashank, Hu, J. J., Lawson, Michael, and Sprague, Michael A. A Comparison of Classical and AggregationBased Algebraic Multigrid Preconditioners for HighFidelity Simulation of Wind Turbine Incompressible Flows. United States: N. p., 2019.
Web. https://doi.org/10.1137/18M1179018.
Thomas, Stephen J., Ananthan, Shreyas, Yellapantula, Shashank, Hu, J. J., Lawson, Michael, & Sprague, Michael A. A Comparison of Classical and AggregationBased Algebraic Multigrid Preconditioners for HighFidelity Simulation of Wind Turbine Incompressible Flows. United States. https://doi.org/10.1137/18M1179018
Thomas, Stephen J., Ananthan, Shreyas, Yellapantula, Shashank, Hu, J. J., Lawson, Michael, and Sprague, Michael A. Tue .
"A Comparison of Classical and AggregationBased Algebraic Multigrid Preconditioners for HighFidelity Simulation of Wind Turbine Incompressible Flows". United States. https://doi.org/10.1137/18M1179018. https://www.osti.gov/servlets/purl/1574702.
@article{osti_1574702,
title = {A Comparison of Classical and AggregationBased Algebraic Multigrid Preconditioners for HighFidelity Simulation of Wind Turbine Incompressible Flows},
author = {Thomas, Stephen J. and Ananthan, Shreyas and Yellapantula, Shashank and Hu, J. J. and Lawson, Michael and Sprague, Michael A.},
abstractNote = {This paper presents a comparison of parallel strong scaling performance of classical and aggregation algebraic multigrid (AMG) preconditioners in the context of wind turbine simulations. Fluid motion is governed by the incompressible NavierStokes equations, discretized in space with controlvolume finite elements and in time with an inexact projection scheme using an implicit integrator. A discontinuousGalerkin slidingmesh algorithm captures rotor motion. The momentum equations are solved with iterative Krylov methods, preconditioned by symmetric GaussSeidel (SGS) in Trilinos and $\ell_1$ SGS in hypre. The masscontinuity equation is solved with GMRES preconditioned by AMG and can account for the majority of simulation time. Reducing this continuity solve time is crucial. Wind turbine simulations present two unique challenges for AMG preconditioned solvers: the computational meshes include strongly anisotropic elements, and mesh motion requires matrix reinitialization and computation of preconditioners at each time step. Detailed timing profiles are presented and analyzed, and best practices are discussed for both classical and aggregationbased AMG. Results are presented for simulations of two different wind turbines with up to 6 billion grid points on two different computer architectures. For moving mesh problems that require linearsystem reinitialization, the wellestablished strategy of amortizing preconditioner setup costs over a large number of time steps to reduce the solve time is no longer valid. Instead, results show that faster time to solution is achieved by reducing preconditioner setup costs at the expense of linearsystem solve costs. Standard smoothed aggregation with Chebyshev relaxation was found to perform poorly when compared with classical AMG in terms of solve time and robustness. However, plain aggregation was comparable to classical AMG.},
doi = {10.1137/18M1179018},
journal = {SIAM Journal on Scientific Computing},
number = 5,
volume = 41,
place = {United States},
year = {2019},
month = {10}
}