SC19 Proceedings

The International Conference for High Performance Computing, Networking, Storage, and Analysis

Spack Community BoF

Authors: Adam Stewart (University of Illinois), Massimiliano Culpo (Swiss Federal Institute of Technology Lausanne (EPFL)), Gregory Becker (Lawrence Livermore National Laboratory), Peter Scheibel (Lawrence Livermore National Laboratory), Todd Gamblin (Lawrence Livermore National Laboratory)

Abstract: Spack is a package manager for scientific computing, with a rapidly growing open-source community. Spack has over 445 contributors from academia, industry, and laboratories across the world, and is used to manage software releases for the U.S. Exascale Computing Project. At this BoF, Spack developers will give updates on the community, new features, and the roadmap for future development. We will poll the audience to gather valuable information on how Spack is being used, and will open the floor for questions. All are invited to provide feedback, request features, and discuss future directions. Help us make installing HPC software simple!

Long Description: HPC software is becoming increasingly complex. The largest applications require over 100 dependency libraries, and they combine interpreted languages like Python with C, C++, and Fortran libraries. To achieve good performance, developers tune for multiple compilers, build options, and implementations of dependency libraries like MPI, BLAS, and LAPACK. The space of possible build configurations is combinatorial, and developers waste countless hours rebuilding software instead of producing new scientific results.

Spack ( is a package manager for scientific computing. It aims to reduce the complexity of building and installing HPC software on laptops, clusters, and the most powerful supercomputers in the world. There are over 3,200 package recipes in the Spack mainline repository, and over 2,000 users visit the Spack documentation monthly. Spack has a rapidly growing open source community from across the world, with over 430 contributors from academia, industry, and laboratories. End users install complex HPC applications; developers manage dependencies for themselves and for their team; and the largest supercomputing sites in the world use Spack to deploy software for thousands of users. Spack is also being used to manage software releases for the U.S. Exascale Computing Project.

The goals of this BOF are: 1) to inform users about recent and upcoming developments, 2) to connect sites and developers using Spack to manage software, 3) to solicit feedback to guide future directions, and 4) to build the Spack community.

Since we originally presented Spack at SC15, the community has grown very rapidly, and new features are being added at a rapid pace. SC is a great venue to keep the user community informed about the most important new developments.

This Spack Community BoF was also held at SC18, with an attendance of 80. Since then, the number of contributors to Spack has grown by 50%, thanks to new collaborations with RIKEN, Fujitsu, and other organizations. We have held Spack tutorials at SC16, SC17, and SC18, with a fourth to be held at SC19. Last year's tutorial had upwards of 60 attendees (50% more than the year prior). At the upcoming PEARC19 conference, nearly 100 of 700 attendees have already registered for our tutorial session. Users and contributors have asked for a more interactive forum to build the community, make announcements, and solicit feedback. An SC BoF is the ideal venue for these interactions.


Back to Birds of a Feather Archive Listing