3 ms·
What does this offer over the usual suspects brew, linuxbrew, apt… ?
by pharmakom 4y ago
What does this offer over the usual suspects brew, linuxbrew, apt… ?
- throw0101b 4y agoMultiple versions of the same package can be handy: e.g., Python 3.6, 3.8. and 3.10 all handled by the package manager and able to switch between them on a per-session/terminal basis (no need to completely disable a particular install: just adjust $PATH and $LIB as needed). Able to create pyenv-like environments which can then be 'exported' and sent to other systems/users having Spack so that development/debugging can be done with the same setup: * https://spack-tutorial.readthedocs.io/en/latest/tutorial_environments.html https://spack-tutorial.readthedocs.io/en/latest/tutorial_env... Able to use 'internal' packages (spack install openssl) or external packages (link against /usr/lib/libssl.so) on a per item basis: sometimes you want the newest code, but other times you want the OS package so that you can get security updates 'for free'. Most other system do one or the other: Spack allows you to choose.
- stonogo 4y agoSpack allows you to have several matrices of the same package installed. So, if you want to install Foobar, and you want one copy built with gcc and linked to openmpi, one copy with llvm and linked to mpich, and three copies with the Intel compiler and three different versions of the Intel mpi libraries,spack can do that for you, and help manage your environment to ensure you are running the stack you intend. It's primary use is in supercomputing to make various optimizations available to users.
- CaliforniaKarl 4y agoThe examples you listed are designed to install packages on a single system. Spack is designed to install packages in a network-storage path that can be accessed by multiple semi-heterogeneous systems that run the same main architecture.