Hoffman2:Singularity: Difference between revisions

From Center for Cognitive Neuroscience
Jump to navigation Jump to search
 
Line 32: Line 32:


===Convert Docker image for Singularity===
===Convert Docker image for Singularity===
Docker image can be converted for Singularity
  export SINGULARITY_CACHEDIR=$SCRATCH/singularity_cache
  export SINGULARITY_CACHEDIR=$SCRATCH/singularity_cache
  singularity pull tensorflow-1.15.5-gpu-jupyter.sif docker://tensorflow/tensorflow:1.15.5-gpu-jupyter
  singularity pull tensorflow-1.15.5-gpu-jupyter.sif docker://tensorflow/tensorflow:1.15.5-gpu-jupyter

Latest revision as of 22:38, 12 August 2021

Singularity

Singularity is a type of container technology. It is provided in Hoffman2 currently.

How to use Singularity

The example code here is from IDRE team's | gitlab. Please check it up for more information.

Interactive mode

In a CentOs 7 Node, load Singularity module as

module load singularity
singularity shell --userns $H2_CONTAINER_LOC/tensorflow-2.4.1-gpu-jupyter.sif

Then run your command inside of the container

python3 tf-example.py > tf-example-batch.out

Batch mode

Add the following line into your batch job script

module load singularity/3.7.1

Use "singularity exec" to run command in Singularity container

Example

singularity exec --userns $H2_CONTAINER_LOC/tensorflow-2.4.1-gpu-jupyter.sif  python3 tf-example.py > tf-example-batch.out

Convert Docker image for Singularity

Docker image can be converted for Singularity

export SINGULARITY_CACHEDIR=$SCRATCH/singularity_cache
singularity pull tensorflow-1.15.5-gpu-jupyter.sif docker://tensorflow/tensorflow:1.15.5-gpu-jupyter