Nothing Special   »   [go: up one dir, main page]

skip to main content
research-article

Performance portable ice-sheet modeling with MALI

Published: 01 September 2023 Publication History

Abstract

High-resolution simulations of polar ice sheets play a crucial role in the ongoing effort to develop more accurate and reliable Earth system models for probabilistic sea-level projections. These simulations often require a massive amount of memory and computation from large supercomputing clusters to provide sufficient accuracy and resolution; therefore, it has become essential to ensure performance on these platforms. Many of today’s supercomputers contain a diverse set of computing architectures and require specific programming interfaces in order to obtain optimal efficiency. In an effort to avoid architecture-specific programming and maintain productivity across platforms, the ice-sheet modeling code known as MPAS-Albany Land Ice (MALI) uses high-level abstractions to integrate Trilinos libraries and the Kokkos programming model for performance portable code across a variety of different architectures. In this article, we analyze the performance portable features of MALI via a performance analysis on current CPU-based and GPU-based supercomputers. The analysis highlights not only the performance portable improvements made in finite element assembly and multigrid preconditioning within MALI with speedups between 1.26 and 1.82x across CPU and GPU architectures but also identifies the need to further improve performance in software coupling and preconditioning on GPUs. We perform a weak scalability study and show that simulations on GPU-based machines perform 1.24–1.92x faster when utilizing the GPUs. The best performance is found in finite element assembly, which achieved a speedup of up to 8.65x and a weak scaling efficiency of 82.6% with GPUs. We additionally describe an automated performance testing framework developed for this code base using a changepoint detection method. The framework is used to make actionable decisions about performance within MALI. We provide several concrete examples of scenarios in which the framework has identified performance regressions, improvements, and algorithm differences over the course of 2 years of development.

References

[1]
Aminikhanghahi S and Cook DJ (2017) A survey of methods for time series change point detection. Knowledge and Information Systems 51(2): 339–367.
[2]
Baker CG and Heroux MA (2012) Tpetra, and the use of generic programming in scientific computing. Scientific Programming 20(2): 115–128.
[3]
Bavier E, Hoemmen M, and Rajamanickam S, et al. (2012) Amesos2 and Belos: Direct and iterative solvers for large sparse linear systems. Scientific Programming 20(3): 241–255.
[4]
Berger-Vergiat L, Glusa CA, and Hu JJ, et al. (2019) MueLu User’s Guide. Technical Report SAND2019-0537, Sandia National Laboratories.
[5]
Blatter H (1995) Velocity and stress fields in grounded glaciers: a simple algorithm for including deviatoric stress gradients. Journal of Glaciology 41(138): 333–344.
[6]
Bonferroni C (1936) Teoria statistica delle classi e calcolo delle probabilita. Pubblicazioni del R Istituto Superiore di Scienze Economiche e Commericiali di Firenze 8: 3–62.
[7]
Brædstrup CF, Damsgaard A, and Egholm DL (2014) Ice-sheet modelling accelerated by graphics cards. Computers & Geosciences 72: 210–220.
[8]
Brodsky B (2016) Change-point Analysis in Nonstationary Stochastic Models. CRC Press.
[9]
Brown J, Smith B, and Ahmadia A (2013) Achieving textbook multigrid efficiency for hydrostatic ice sheet flow. SIAM Journal on Scientific Computing 35(2): B359–B375.
[10]
Carlson M, Watkins J, and Tezaur I (2020) Improvements to the performance portability of boundary conditions in Albany Land Ice. CSRI Summer Proceedings: 177–187.
[11]
Chen C, Cambier L, and Boman EG, et al. (2019) A robust hierarchical solver for ill-conditioned systems with applications to ice sheet modeling. Journal of Computational Physics 396: 819–836.
[12]
Cornford SL, Martin DF, and Graves DT, et al. (2013) Adaptive mesh, finite volume modeling of marine ice sheets. Journal of Computational Physics 232(1): 529–549.
[13]
Cuffey KM and Paterson WSB (2010) The Physics of Glaciers. Academic Press.
[14]
Daly D, Brown W, and Ingo H, et al. (2020) The use of change point detection to identify software performance regressions in a continuous integration system Proceedings of the ACM/SPEC International Conference on Performance Engineering, pp. 67–75.
[15]
Demeshko I, Watkins J, and Tezaur IK, et al. (2018) Toward performance portability of the Albany finite element analysis code using the Kokkos library. The International Journal of High Performance Computing Applications.
[16]
Dickens P (2015) A performance and scalability analysis of the MPI based tools utilized in a large ice sheet model executing in a multicore environment International Conference on Algorithms and Architectures for Parallel Processing. Springer, pp. 131–147.
[17]
Dukowicz JK, Price SF, and Lipscomb WH (2010) Consistent approximations and boundary conditions for ice-sheet dynamics from a principle of least action. Journal of Glaciology 56(197): 480–496.
[18]
Edwards HC, Trott CR, and Sunderland D (2014) Kokkos: Enabling manycore performance portability through polymorphic memory access patterns. Journal of Parallel and Distributed Computing 74(12): 3202–3216.
[19]
Edwards TL, Nowicki S, and Marzeion B, et al. (2021) Projected land ice contributions to twenty-first-century sea level rise. Nature 593(7857): 74–82.
[20]
Fischler Y, Rückamp M, and Bischof C, et al. (2021) A scalability study of the ice-sheet and sea-level system model (ISSM, version 4.18). Geoscientific Model Development Discussions: 1–33.
[21]
Flato G, Marotzke J, and Abiodun B, et al. (2014) Evaluation of climate models Climate change 2013: the physical science basis. Contribution of Working Group I to the Fifth Assessment Report of the Intergovernmental Panel on Climate Change. Cambridge University Press, pp. 741–866.
[22]
Forsgren N, Storey MA, and Maddila C, et al. (2021) The SPACE of developer productivity: There’s more to it than you think. Queue 19(1): 20–48.
[23]
Gagliardini O, Zwinger T, and Gillet-Chaulet F, et al. (2013) Capabilities and performance of Elmer/Ice, a new-generation ice sheet model. Geoscientific Model Development 6(4): 1299–1318.
[24]
Goelzer H, Nowicki S, and Payne A, et al. (2020) The future sea-level contribution of the Greenland ice sheet: A multi-model ensemble study of ISMIP6. Cryosphere 14(9): 3071–3096.
[25]
Hawkins DM, Qiu P, and Kang CW (2003) The changepoint model for statistical process control. Journal of Quality Technology 35(4): 355–366.
[26]
Heinlein A, Perego M, and Rajamanickam S (2022) FROSch preconditioners for land ice simulations of Greenland and Antarctica. SIAM Journal on Scientific Computing 44(2): B339–B367.
[27]
Heroux MA, Bartlett RA, and Howle VE, et al. (2005) An overview of the Trilinos project. ACM Transactions on Mathematical Software (TOMS) 31(3): 397–423.
[28]
Hoefler T and Belli R (2015) Scientific benchmarking of parallel computing systems: twelve ways to tell the masses when reporting performance results Proceedings of the international conference for high performance computing, networking, storage and analysis, pp. 1–12.
[29]
Hoffman MJ, Perego M, and Price SF, et al. (2018) MPAS-Albany Land Ice (MALI): a variable-resolution ice sheet model for Earth system modeling using Voronoi grids. Geoscientific Model Development 11(9): 3747–3780.
[30]
Isaac T, Stadler G, and Ghattas O (2015) Solution of nonlinear stokes equations discretized by high-order finite elements on nonconforming and anisotropic meshes, with application to ice sheet dynamics. SIAM Journal on Scientific Computing 37(6): B804–B833.
[31]
Kanewala U and Bieman JM (2014) Testing scientific software: A systematic literature review. Information and Software Technology 56(10): 1219–1232.
[32]
Larour E, Seroussi H, and Morlighem M, et al. (2012) Continental scale, high order, high spatial resolution, ice sheet modeling using the Ice Sheet System Model (ISSM). Journal of Geophysical Research: Earth Surface 117(F1).
[33]
Levermann A, Winkelmann R, and Albrecht T, et al. (2020) Projecting Antarctica’s contribution to future sea level rise from basal ice shelf melt using linear response functions of 16 ice sheet models (LARMIP-2). Earth System Dynamics 11(1): 35–76. Available at: https://esd.copernicus.org/articles/11/35/2020/
[34]
Leys C, Ley C, and Klein O, et al. (2013) Detecting outliers: Do not use standard deviation around the mean, use absolute deviation around the median. Journal of Experimental Social Psychology 49(4): 764–766.
[35]
Neely J (2016) DOE Centers of Excellence Performance Portability Meeting. Livermore, CA (United States): Lawrence Livermore National Lab. (LLNL). Technical report.
[36]
Nye J (1957) The distribution of stress and velocity in glaciers and ice-sheets. Proc. R. Soc. Lond. A 239(1216): 113–133.
[37]
Oppenheimer M, Glavovic B, and Hinkel J, et al. (2019) Sea Level Rise and Implications for Low Lying Islands, Coasts and Communities.
[38]
Pattyn F (2003) A new three-dimensional higher-order thermomechanical ice sheet model: Basic sensitivity, ice stream development, and ice flow across subglacial lakes. Journal of Geophysical Research: Solid Earth 108(B8).
[39]
Pattyn F, Favier L, and Sun S, et al. (2017) Progress in Numerical Modeling of Antarctic Ice-Sheet Dynamics. Current Climate Change Reports 1. Available at: http://link.springer.com/10.1007/s40641-017-0069-7
[40]
Pawlowski RP, Phipps ET, and Salinger AG (2012a) Automating embedded analysis capabilities and managing software complexity in multiphysics simulation, Part I: Template-based generic programming. Scientific Programming 20(2): 197–219.
[41]
Pawlowski RP, Phipps ET, and Salinger AG, et al. (2012b) Automating embedded analysis capabilities and managing software complexity in multiphysics simulation, Part II: Application to partial differential equations. Scientific Programming 20(3): 327–345.
[42]
Payne AJ, Nowicki S, and Abe-Ouchi A, et al. (2021) Future sea level change under CMIP5 and CMIP6 scenarios from the Greenland and Antarctic ice sheets. Geophysical Research Letters 1–8.
[43]
Pedregosa F, Varoquaux G, and Gramfort A, et al. (2011) Scikit-learn: Machine learning in Python. Journal of Machine Learning Research 12: 2825–2830.
[44]
Peng Z, Lin X, and Simon M, et al. (2021) Unit and regression tests of scientific software: A study on SWMM. Journal of Computational Science 53: 101347.
[45]
Pennycook S, Sewall J, and Lee V (2017) Implications of a metric for performance portability. Future Generation Computer Systems 90.
[46]
Pennycook SJ, Sewall J, and Lee V (2016) A metric for performance portability. arXiv preprint arXiv:1611.07409.
[47]
Pennycook SJ, Sewall JD, and Jacobsen DW, et al. (2021) Navigating performance, portability, and productivity. Computing in Science & Engineering 23(5): 28–38.
[48]
Perego M, Price S, and Stadler G (2014) Optimal initial conditions for coupling ice sheet models to Earth system models. Journal of Geophysical Research: Earth Surface 119(9): 1894–1917.
[49]
Phipps E and Pawlowski R (2012) Efficient expression templates for operator overloading-based automatic differentiation Recent Advances in Algorithmic Differentiation. Berlin: Springer, pp. 309–319.
[50]
Prokopenko A, Siefert CM, Hu JJ, Hoemmen M, Klinvex A (2016) Ifpack2 users guide 1.0. Technical report SAND2016-5338, Sandia National Labs, 2016.
[51]
Randall DA, Wood RA, and Bony S, et al. (2007) Climate models and their evaluation Climate change 2007: The physical science basis. Contribution of Working Group I to the Fourth Assessment Report of the IPCC (FAR). Cambridge: Cambridge University Press, pp. 589–662.
[52]
Räss L, Licul A, and Herman F, et al. (2020) Modelling thermomechanical ice deformation using an implicit pseudo-transient method (FastICE v1. 0) based on graphical processing units (GPUs). Geoscientific Model Development 13(3): 955–976.
[53]
Räss L, Utkin I, and Duretz T, et al. (2022) Assessing the robustness and scalability of the accelerated pseudo-transient method towards exascale computing. Geoscientific Model Development Discussions 2022: 1–46. Available at: https://gmd.copernicus.org/preprints/gmd-2021-411/
[54]
Ringler T, Petersen M, and Higdon RL, et al. (2013) A multi-resolution approach to global ocean modeling. Ocean Modelling 69: 211–232. Available at: https://www.sciencedirect.com/science/article/pii/S1463500313000760
[55]
Rutt IC, Hagdorn M, and Hulton N, et al. (2009) The Glimmer community ice sheet model. Journal of Geophysical Research: Earth Surface 114(F2).
[56]
Salinger AG, Bartlett RA, and Bradley AM, et al. (2016) Albany: Using component-based design to develop a flexible, generic multiphysics analysis code. International Journal for Multiscale Computational Engineering 14(4).
[57]
Schoof C and Hindmarsh RC (2010) Thin-film flows with wall slip: an asymptotic analysis of higher order glacier flow models. The Quarterly Journal of Mechanics & Applied Mathematics 63(1): 73–114.
[58]
Seroussi H, Nowicki S, and Payne AJ, et al. (2020) ISMIP6 Antarctica: a multi-model ensemble of the Antarctic ice sheet evolution over the 21st century. The Cryosphere 14(9): 3033–3070. Available at: https://tc.copernicus.org/articles/14/3033/2020/
[59]
Tartakovsky A, Nikiforov I, and Basseville M (2014) Sequential Analysis: Hypothesis Testing and Changepoint Detection. Boca Raton: CRC Press.
[60]
Tezaur IK, Perego M, and Salinger AG, et al. (2015a) Albany/FELIX: a parallel, scalable and robust, finite element, first-order Stokes approximation ice sheet solver built for advanced analysis. Geoscientific Model Development 8(4): 1197.
[61]
Tezaur IK, Tuminaro RS, Perego M, Salinger AG, and Price SF, et al. (2015b) On the scalability of the Albany/FELIX first-order Stokes approximation ice sheet solver for large-scale simulations of the Greenland and Antarctic ice sheets. Procedia Computer Science 51: 2026–2035.
[62]
The NOX and LOCA Project Team (2022) The NOX and LOCA Project Website. Online. https://trilinos.github.io/nox_and_loca.html (accessed 4 April 2022).
[63]
The Teuchos Project Team (2022) The Teuchos Project Website. Online. https://trilinos.github.io/teuchos.html (accessed 4 April 2022).
[64]
TOP500 (2021) June 2021 TOP500 List. Online. https://www.top500.org/lists/top500/2021/06/(accessed 25 October 2021).
[65]
Trott C, Berger-Vergiat L, and Poliakoff D, et al. (2021) The Kokkos EcoSystem: Comprehensive performance portability for high performance computing. Computing in Science Engineering 23(5): 10–18.
[66]
Trott CR, Lebrun-Grandié D, and Arndt D, et al. (2022) Kokkos 3: Programming model extensions for the exascale era. IEEE Transactions on Parallel and Distributed Systems 33(4): 805–817.
[67]
Tuminaro R, Perego M, and Tezaur I, et al. (2016) A matrix dependent/algebraic multigrid approach for extruded meshes with applications to ice sheet modeling. SIAM Journal on Scientific Computing 38(5): C504–C532.
[68]
Watkins J, Tezaur I, and Demeshko I (2020) A study on the performance portability of the finite element assembly process within the Albany Land Ice solver Numerical Methods for Flows. Cham: Springer, pp. 177–188.
[69]
Winkelmann R, Martin MA, and Haseloff M, et al. (2011) The Potsdam parallel ice sheet model (PISM-PIK)-Part 1: Model description. The Cryosphere 5(3): 715.
[70]
Yang C, Gayatri R, and Kurth T et al. (2018) An empirical roofline methodology for quantitatively assessing performance portability. In: Proceedings of the 2018 IEEE/ACM International Workshop on Performance, Portability and Productivity in HPC (P3HPC). Dallas, TX, USA, 16 November 2018, IEEE, pp. 14–23.

Recommendations

Comments

Please enable JavaScript to view thecomments powered by Disqus.

Information & Contributors

Information

Published In

cover image International Journal of High Performance Computing Applications
International Journal of High Performance Computing Applications  Volume 37, Issue 5
Sep 2023
182 pages

Publisher

Sage Publications, Inc.

United States

Publication History

Published: 01 September 2023

Author Tags

  1. Albany
  2. changepoint detection
  3. GPU
  4. high-performance computing
  5. ice-sheet modeling
  6. Kokkos
  7. performance
  8. portability
  9. performance testing
  10. Trilinos

Qualifiers

  • Research-article

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • 0
    Total Citations
  • 0
    Total Downloads
  • Downloads (Last 12 months)0
  • Downloads (Last 6 weeks)0
Reflects downloads up to 23 Nov 2024

Other Metrics

Citations

View Options

View options

Login options

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media