Singularity can be viewed as the Docker for HPC, i.e., a Singularity image contains all the operating system/software components for your application and can be deployed and run on HPC infrastructure, as well as on your own laptop, and even in the cloud.
An additional advantage of Singularity containers is that they can help you create a software environment that is stable over long periods of time, which helps reproduce results in the future.
Learning outcomes
When you complete this training you will be able to
- use Singularity containers;
- create your own definition files for containers;
- understand strengths and weaknesses of containers;
- recognize and avoid potential pitfalls.
Schedule
Total duration: 3 hours.
Subject | Duration |
---|---|
introduction and motivation | 15 min. |
Singularity definition files | 75 min. |
coffee break | 15 min. |
Singularity & parallel applications | 15 min. |
Singularity & services | 20 min. |
hands-on | 30 min. |
wrap up | 10 min. |
Training materials
Slides are available in the GitHub repository, as well as example Singularity definition files.
Target audience
This training is for you if you have some non-trivial workflows on HPC systems, or reproducibility requirements.
Prerequisites
You will need to be comfortable using Linux and the HPC environment. If necessary, attend the appropriate training sessions on those subjects.
Trainer(s)
- Geert Jan Bex (geertjan.bex@uhasselt.be)