2023-12-14 オークリッジ国立研究所(ORNL)
The illustration depicts ocean surface currents simulated by MPAS-Ocean. Credit: Los Alamos National Laboratory, E3SM, U.S. Dept. of Energy
◆新しいソルバーは、TrilinosおよびForTrilinosを活用し、特にバロトロピックな波に焦点を当てています。この成果により、気候研究の高速化が可能になり、気候変動の影響を将来数十年または数千年にわたってより速く、信頼性高く、正確に予測できるようになります。
<関連情報>
- https://www.ornl.gov/news/custom-software-speeds-stabilizes-high-profile-ocean-model
- https://journals.sagepub.com/doi/10.1177/10943420231205601
- https://agupubs.onlinelibrary.wiley.com/doi/full/10.1029/2020MS002238
最新のFORTRANソルバーインターフェースを使用したMPAS-ocean用陰圧気圧モードソルバー An implicit barotropic mode solver for MPAS-ocean using a modern Fortran solver interface
Hyun-Gyu Kang, Raymond S Tuminaro, Andrey Prokopenko, Seth R Johnson, Andrew G Salinger, and Katherine J Evans
The International Journal of High Performance Computing Applications Published:November 18, 2023
DOI:https://doi.org/10.1177/10943420231205601
Abstract
We demonstrate use of a modern Fortran solver interface to manage solver algorithms for an implicit barotropic mode solver in the Model for Predictions Across Scales-Ocean (MPAS-O). ForTrilinos, a Fortran interface to Trilinos that contains a large collection of solver capabilities written in C++, has been implemented in MPAS-O to provide access to a suite of linear solver options. By virtue of the simplified wrapper and interface generator (SWIG) automation tool that generates modern Fortran interfaces to C++ code, we were able to implement the Fortran solver interface in MPAS-O using a familiar Fortran coding style while minimizing performance degradation. The ForTrilinos solver interface is written within MPAS-O’s time stepping modules as a subroutine in conjunction with MPAS-O code. Applied to an idealized ocean and a high-resolution realistic ocean test case, parallel performance of ForTrilinos solvers is examined. It is found that parallel scalability of the ForTrilinos solvers is highly dependent on the number of global synchronization points per solver iteration in each iterative solver algorithm. ForTrilinos solvers perform best compared to the Fortran hand-crafted (FHC) solver when the amount of work per processor is large enough. However, parallel scalability is better with the FHC solver and so when the work per core is modest FHC outperforms ForTrilinos. The intercomparison between the ForTrilinos and FHC solvers reveals that this performance hit in the ForTrilinos solver mostly comes from the global synchronization process, while suggesting that the matrix-vector multiplication process in the FHC solver needs to be optimized for better performance.
MPAS-Ocean用のスケーラブルな半陰解法バロトロピックモードソルバ A Scalable Semi-Implicit Barotropic Mode Solver for the MPAS-Ocean
Hyun-Gyu Kang, Katherine J. Evans, Mark R. Petersen, Philip W. Jones, Siddhartha Bishnu
Journal of Advances in Modeling Earth Systems Published: 20 March 2021
DOI:https://doi.org/10.1029/2020MS002238
Abstract
A scalable semi-implicit barotropic mode solver for the ocean component of the model for prediction across scales has been implemented as a competitor to an existing explicit-subcycling scheme to allow faster and more stable simulations while not sacrificing accuracy. The semi-implicit solver adopts the pipelined preconditioned bi-conjugate gradient stabilization algorithm as an iterative solver in conjunction with the restricted additive Schwarz preconditioner that accelerates the convergence rate of the iterative solver. The preconditioner is constructed from a linearized barotropic system that also reorders the system for optimal performance, while the semi-implicit solver deals with the fully nonlinear barotropic system that requires reassembly of the coefficient matrix for every time step. Several numerical experiments, from simple one-dimensional tests to three-dimensional real-world tests, demonstrate that the semi-implicit solver has almost the same accuracy and better parallel scalability compared with the existing scheme while allowing faster and more stable simulations. The semi-implicit solver accelerates the barotropic mode up to 2.9 times faster than the existing scheme on 16,320 processors, leading to an overall runtime speedup of 1.9.
Key Points
- A semi-implicit barotropic mode solver is implemented in Model for Prediction Across Scales-Ocean as a competitor to an existing explicit-subcycling scheme
- A particular form of the preconditioner that reorders the linear system for optimal performance is constructed for the iterative solver
- The semi-implicit solver provides faster and more stable ocean simulations compared to the existing scheme
Plain Language Summary
The fastest gravity-induced oceanic waves, known as the barotropic mode, travel with a vertically uniform motion. Simulating these fast two-dimensional waves while also capturing the slower three-dimensional waves is a major challenge in ocean modeling. In the Model for Prediction Across Scales-Ocean, this is currently addressed with an explicit-subcycling method that resolves the fast-timescale waves by taking many small time steps, which requires additional work to match up to a longer time step for the longer-timescale waves. In this paper, we implemented an alternative method that solves the barotropic system implicitly with the same time step as for the longer timescale waves. This implicit method solves a self-consistent matrix equation for the future state by continuously improving estimates of that future state and converging to this consistent solution iteratively. To increase computational performance, we constructed a particular form of a preconditioner, which is a simplification of the full problem, and this significantly decreases the number of iterations. Numerical experiments demonstrate that this newly implemented method has maintained almost the same accuracy while providing better computational performance and more stable simulations compared with the current method.