DOE OSTI · code-2666
Spack: the Supercomputing Package Manager
Abstract
The HPC software ecosystem is growing larger and more complex, but software distribution mechanisms have not kept up with this trend. Tools, Libraries, and applications need to run on multiple platforms and build with multiple compliers. Increasingly, packages leverage common software components, and building any one component requires building all of its dependencies. In HPC environments, ABI-incompatible interfaces (likeMPI), binary-incompatible compilers, and cross-compiled environments converge to make the build process a combinatoric nightmare. This obstacle deters many users from adopting useful tools, and others waste countless hours building and rebuilding tools. Many package managers exist to solve these problems for typical desktop environments, but none suits the unique needs of supercomputing facilities or users. To address these problems, we have Spack, a package manager that eases the task of managing software for end-users, across multiple platforms, package versions, compilers, and ABI incompatibilities.
Explore related subjects
Keep this discovery
Explore connections, maps & timelines
Gamblin, Todd. 2013-11-09. Spack: the Supercomputing Package Manager. https://doi.org/10.11578/dc.20171025.1465
Cite the original work for its findings. Save a collection to share your selection of sources.