Skip to content

Singularity

mapostolides edited this page Apr 5, 2021 · 8 revisions

Running MetaFusion using Singularity image

For those using an HPC environment which does not support Docker, the singularity image can be downloaded from the following link: https://figshare.com/articles/software/Singularity_image/12985949

The topdir variable must be modified in the script RUN_MetaFusion.Singularity.sh to specify where the MetaFusion source code was downloaded

Once downloaded, the MetaFusion test data can be run in the following way:

singularity exec -B /home -B /absolute/path/to/MetaFusion -B /tmp -B /local/path/to/tmp  /absolute/path/to/MetaFusion.simg bash RUN_MetaFusion.Singularity.sh

Note the reasons for the following bind mounts:

  1. -B /absolute/path/to/MetaFusion
    Makes the source code MetaFusion available inside the container

  2. -B /tmp -B /localhd/tmp
    Binds temporary directories where temporary files can be written to (the MetaFusion.simg container is read-only)

An example of a script which can be used to submit a job to a PBS cluster is as follows:

#!/bin/bash
#PBS -N MetaFusion.Singularity
#PBS -l nodes=1:ppn=1
#PBS -l mem=10g
#PBS -l vmem=10g
#PBS -l walltime=24:00:00
#PBS -o /absolute/path/to/MetaFusion/out.log 
#PBS -e /absolute/path/to/MetaFusion/out.err

module load Singularity
cd /absolute/path/to/MetaFusion/MetaFusion/scripts
singularity exec -B /home -B /absolute/path/to/MetaFusion -B /tmp -B /local/path/to/tmp  /absolute/path/to/MetaFusion.simg bash RUN_MetaFusion.Singularity.sh

Clone this wiki locally