Enabling Cross-Project Research to Strengthen Math Libraries for Scientific Simulations
Hi, and welcome. This is where we explore the efforts of the Department of Energy’s (DOE’s) Exascale Computing Project (ECP)—from the development challenges and achievements to the ultimate expected impact of exascale computing on society.
For computer simulations to accurately answer tough questions about phenomena in the world that are important to all of us, the right supporting software must be in place to provide the necessary math libraries as building blocks. In this episode, we’ll delve a bit into the dynamics of software that’s supplying such a foundation.
The MFEM open-source C++ language library provides advanced mathematical algorithms independently of a specific scientific application. Researchers place MFEM in applications to meet widescale simulation goals related to various subjects of inquiry—some examples are nuclear reactors, materials, building and bridge strength, and electromagnetic devices. The list of how MFEM can help goes on.
With MFEM (modular finite element methods), simulating physics involves splitting phenomena into small components, or finite elements, where local calculations are performed using MFEM’s advanced high-order adaptive mesh refinement (to describe objects by a collection of small simple shapes) and GPU-powered algorithms.
The Center for Efficient Exascale Discretizations (CEED), one of six co-design centers in ECP, is developing the next-generation discretization software and algorithms that will enable a wide range of finite element applications to run efficiently on future hardware. Efficiency is measured by the accuracy achieved per unit of computational time.
Tzanio Kolev of Lawrence Livermore National Laboratory is principal investigator of CEED and the leader of its efforts in developing MFEM. Our guest in this episode, Natalie Beams of the Innovative Computing Laboratory (ICL) at the University of Tennessee, is one of the many collaborators who interact with Tzanio and the CEED team. The Innovative Computing Laboratory is led by Jack Dongarra. As you may know, Jack is the recipient of the 2021 ACM A. M. Turing Award, computing’s most prestigious honor. It is an annual prize given by the Association for Computing Machinery for contributions of lasting and major technical importance to computer science. The award is often referred to as the “Nobel Prize of Computing” and carries a $1 million prize.
Natalie is working on the ECP Clover project, which is delivering scalable, portable numerical algorithms to facilitate efficient simulations. Under the umbrella of Clover, is Ginkgo, a next-generation sparse linear algebra library. The principal investigator of the Ginkgo project is Hartwig Anzt of ICL.
The focus of our discussion is on the integration of Ginkgo as a numerical backend for the MFEM software ecosystem. Natalie tells us that the integration has enabled cross-project research and important testing capabilities.
Natalie holds a bachelor’s degree in mechanical engineering and a PhD in theoretical and applied mechanics. Her dissertation was in numerical methods, and she says she has been interested in scientific computing and numerical methods since the early days of her academic career.
As a post-doc, she worked on the OpenMP multithreaded implementation of a fast direct solver to get speedup on CPUs, and then she came to ICL at UT in 2019 and started working on two different ECP projects that were going on at ICL.
Our topics: The similarities between the MFEM and Ginkgo software stacks, the steps and challenges involved in integrating, and the benefits of the integration.
“I think we’ve been successful with a lot of talk between the groups. Instead of just being some random user who wants to try to get these two libraries I found on GitHub to work together for a project I’m doing, to have one foot in each team through an ECP project and get the direct conversation … has been really useful.” —Natalie Beams of the Innovative Computing Laboratory at the University of Tennessee and the Clover subproject within ECP
(4:52) Overall insights about the MFEM and Ginkgo math libraries, including their roles in ECP
(7:26) How the two libraries are similar and the steps necessary to integrate Ginkgo as a numerical backend
(10:13) The importance of the integration
(14:35) A summary of the challenges
(20:11) The collaborative environment
(20:48) How the integration will benefit future software developments
(22:47) A model for math library development collaboration
- MFEM web page, Center for Efficient Exascale Discretizations website
- The ECP Clover project page
- ECP featured publication summary: Ginkgo math library increases software portability across architectures
- ECP podcast episode 61: Helping Applications Use Future Architectures with First-Rate Discretization Libraries
- ECP podcast episode 69: Major Update of the MFEM Finite Element Library Broadens GPU Support
- ECP podcast episode 47: The Ginkgo Library Project is Developing a Vision for Multiprecision Algorithms
- Ginkgo on GitHub
- Innovative Computing Laboratory