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.
- Developers:
-
Gamblin, Todd [1]
- Lawrence Livermore National Lab. (LLNL), Livermore, CA (United States)
- Release Date:
- 2013-11-09
- Project Type:
- Open Source, Publicly Available Repository
- Software Type:
- Scientific
- Licenses:
-
GNU Lesser General Public License v2.1
- Sponsoring Org.:
-
USDOEPrimary Award/Contract Number:AC52-07NA27344
- Code ID:
- 2666
- Site Accession Number:
- 5130
- Research Org.:
- Lawrence Livermore National Laboratory
- Country of Origin:
- United States
- Keywords:
- ECP
Citation Formats
Gamblin, Todd.
Spack: the Supercomputing Package Manager.
Computer Software.
https://github.com/spack/spack.
USDOE.
09 Nov. 2013.
Web.
doi:10.11578/dc.20171025.1465.
Gamblin, Todd.
(2013, November 09).
Spack: the Supercomputing Package Manager.
[Computer software].
https://github.com/spack/spack.
https://doi.org/10.11578/dc.20171025.1465.
Gamblin, Todd.
"Spack: the Supercomputing Package Manager." Computer software.
November 09, 2013.
https://github.com/spack/spack.
https://doi.org/10.11578/dc.20171025.1465.
@misc{
doecode_2666,
title = {Spack: the Supercomputing Package Manager},
author = {Gamblin, Todd},
abstractNote = {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.},
doi = {10.11578/dc.20171025.1465},
url = {https://doi.org/10.11578/dc.20171025.1465},
howpublished = {[Computer Software] \url{https://doi.org/10.11578/dc.20171025.1465}},
year = {2013},
month = {nov}
}