You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
HPC application management has been tricky for HPC admins, users, and developers. There are several reasons:
Complex dependencies
Evolving versions of core components, MPI, compiler, libraries ...
Different OS types and CPU architectures
Difficult to manage the source and pre-built packages
...
A solution is to develop a package management tool similar to the pip, yum, or apt. Spack is a good practice.
However, spack is not easy enough. The HPC-NOW project introduced a module: appman (APPlication MANager). This module aims to let HPC users/admins/developers deploy and manage HPC packages in an easy and unified way.
The main architecture:
Frontend: shell scripts ( Bash ) for appman and for every package ( e.g. Lammps, Gromacs, mpich ...)
Backend: 2 different locations: one for the shell scripts, one for the source and prebuilt binary packages
Main workflow:
appman config : configure the locations of the backend, url and local path are supported
appman install/build/remove : Install, build, or remove the HPC applications. You can specify the backend locations by command args. If not specified, the appman will use the configured ones.
Dependencies:
The system package manager (e.g. YUM or APT) is required to manage some fundamental packages. For example, cmake, make, autoconf ...
reacted with thumbs up emoji reacted with thumbs down emoji reacted with laugh emoji reacted with hooray emoji reacted with confused emoji reacted with heart emoji reacted with rocket emoji reacted with eyes emoji
-
Backgrounds:
HPC application management has been tricky for HPC admins, users, and developers. There are several reasons:
A solution is to develop a package management tool similar to the
pip
,yum
, orapt
. Spack is a good practice.However, spack is not easy enough. The HPC-NOW project introduced a module: appman (APPlication MANager). This module aims to let HPC users/admins/developers deploy and manage HPC packages in an easy and unified way.
The main architecture:
Main workflow:
appman config
: configure the locations of the backend, url and local path are supportedappman install/build/remove
: Install, build, or remove the HPC applications. You can specify the backend locations by command args. If not specified, the appman will use the configured ones.Dependencies:
Beta Was this translation helpful? Give feedback.
All reactions