[PDF][PDF] Collaborative container modules with singularity registry hpc

V Sochat, A Scott - Journal of Open Source Software, 2021 - joss.theoj.org
V Sochat, A Scott
Journal of Open Source Software, 2021joss.theoj.org
Portability and reproducibility of complex software stacks is essential for researchers to
perform their work. High Performance Computing (HPC) environments add another level of
complexity, where possibly conflicting dependencies must co-exist. Although container
technologies like Singularity (Kurtzer et al., 2017) make it possible to “bring your own
environment,” without any form of central strategy to manage containers, researchers who
seek reproducibility via using containers are tasked with managing their own container …
Summary
Portability and reproducibility of complex software stacks is essential for researchers to perform their work. High Performance Computing (HPC) environments add another level of complexity, where possibly conflicting dependencies must co-exist. Although container technologies like Singularity (Kurtzer et al., 2017) make it possible to “bring your own environment,” without any form of central strategy to manage containers, researchers who seek reproducibility via using containers are tasked with managing their own container collection, often not taking care to ensure that a particular digest or version is used. The reproducibility of the work is at risk, as they cannot easily install and use containers, nor can they share their software with others.
Singularity Registry HPC (shpc) is the first of its kind to provide an easy means for a researcher to add their research software for sharing and collaboration with other researchers to an existing collection of over 200 popular scientific libraries Gorgolewski et al.(2017). The software installs containers as environment modules (McLay et al., 2011) that are easy to use and read documentation for, and exposes aliases for commands in the container that the researcher can add to their pipeline without thinking about complex interactions with a container. The simple addition of an entry to the registry maintained by shpc comes down to adding a yaml file, and after doing this, another researcher can easily install the same software, down to the digest, to reproduce the original work.
joss.theoj.org