Managing HPC Software Complexity with Spack
Sunday, May 29, 2022 9:00 AM to 1:00 PM · 3 hr. 59 min. (Europe/Berlin)
Hall Y2 - 2nd Floor
Exascale SystemsHPC Workflows
Information
The modern scientific software stack includes thousands of packages, from C, C++, and Fortran libraries, to packages written in interpreted languages like Python and R. HPC applications may depend on hundreds of packages spanning all of these ecosytems. To achieve high performance, they must also leverage low- level and difficult-to-build libraries such as MPI, BLAS, and LAPACK. Integrating this stack is extremely challenging. The complexity can be an obstacle to deployment at HPC sites and deters developers from building on each others’ work. Spack is an open source tool for HPC package management that simplifies building, installing, customizing, and sharing HPC software stacks. In the past few years, its adoption has grown rapidly: by end-users, by HPC developers, and by the world’s largest HPC centers. Spack provides a powerful and flexible dependency model, a simple Python syntax for writing package build recipes, and a repository of over 6,000 community-maintained packages. This tutorial provides a thorough introduction to Spack’s capabilities: installing and authoring packages, integrating Spack with development workflows, and using Spack for deployment at HPC facilities. Attendees will leave with foundational skills for using Spack to automate day-to-day tasks, along with deeper knowledge for applying Spack to advanced use cases.
Contributors:
Contributors:
- Todd Gamblin (Lawrence Livermore National Laboratory)
- Gregory Becker (Lawrence Livermore National Laboratory)
- Tamara Dahlgren (Lawrence Livermore National Laboratory)
- Massimiliano Culpo (n.p. complete, S.r.l.)
- Michael Kuhn (Otto von Guericke University Magdeburg)
- Harmen Stoppels (Swiss National Supercomputing Centre)
- Adam Stewart (University of Illinois)
Format
On-site