The SUNDIALS Suite of Time Integrators and Nonlinear Solvers: Its Capabilities, Design, and Role in Ushering New Methods Into Scientific Applications
Presenter
January 11, 2022
Abstract
Authors: Carol S. Woodward(1), Daniel R. Reynolds(2), David J. Gardner(1), and Cody J. Balos(1)
Affiliations: (1) Lawrence Livermore National Laboratory, (2) Southern Methodist University
As the scientific computing community leverages unprecedented high-performance computing resources to work toward predictive science, software complexity is increasing. Applications increasingly require newly developed numerical methods implemented for a variety of programming environments as well as the combined use of independent software packages, which have diverse sponsors, priorities, and processes for development and release. Numerical software libraries provide a large and growing resource for high-quality, reusable software components on which applications can be rapidly constructed, with improved robustness, portability, and sustainability.
SUNDIALS is a suite of robust and scalable integrators and solvers for systems of ordinary differential equations, differential-algebraic equations, and nonlinear equations designed for use on computing systems ranging from desktop machines to supercomputers. The suite consists of six packages: CVODE(S), ARKODE, IDA(S), and KINSOL, each built on common vector and solver application programming interfaces (API) allowing for application-specific and user-defined linear solvers, nonlinear solvers, data structures, encapsulated parallelism, and algorithmic flexibility.
In this presentation we will overview SUNDIALS history and capabilities. We will also discuss the design principles adopted by the SUNDIALS development team and discuss how they are manifested in package flexibility and user interfaces. We will give examples of how this flexibility provides an insertion path for new methods developed in the community to get into applications. This presentation will also introduce the xSDK, or Extreme-scale Scientific Software Development Kit, where community-defined policies are increasing the quality and interoperability across numerical libraries as needed by the DOE Exascale Computing Project. This talk will present the community policies developed through the xSDK project, their expected benefits, and lessons learned from adoption of these policies into existing packages. The presentation will conclude with examples highlighting applications of SUNDIALS in some DOE simulations and give a preview of new developments.
This work was performed under the auspices of the U.S. Department of Energy by Lawrence Livermore National Laboratory under Contract DE-AC52-07NA27344. LLNL-ABS- 830479.