HPC High Performance Computing: 10. Singularity

Computational containers

Introduction

This section shows how to use container technology in the Computational Cluster HPC of Poblenou.

Singularity provides a container platform. That is ideal for developers and teams looking to get started and experimenting with container-based applications in a simple, portable and reproducible way.

Technical Information

Singularity engine

  • Version: 3.8.5-2el8

  • Architecture: Standalone engine

Registry Server

  • Docker Registry Frontend v2
  • Docker Registry Server 2.6.2

Information

Some tips that you may know before start working

Images

  • Only SIF (Singularity Image Format) images are supported.
  • Docker Store (DockerHub), Registry Server and other public repositories are supported to deploy containers but you will have to convert the format to SIF images.

Containers

  • You can use singularity commands with your user, not root permissions are necessary.
  • Home directories are automatically mapped inside the container, for datatasets is mandatory specify the path.
  • Users aren't allowed to open a root session inside the container, your UID and GID are directly mapped.
  • Containers will be destroyed after the execution process.
  • Containers cannot communicate each other. Only one job is created per container.
  • CPU, RAM, GPU resources are managed by queue engine, needs must be declared in the Slurm Job settings.
  • Batch and interactive sessions are available; cannot export X sessions, X-Server isn't supported.