HALFpipe
HALFpipe can be run in a apptainer/singularity container on ALICE.
In the manual is some information about running on a HPC cluster:
The container images are located at:
/zfsstore/shared/singularity_images/h/halfpipe-1.3.2.sif
The singularity command is now called apptainer, so starting an interactive shell and starting the container will start the userinterface:
$ salloc -p cpu-short --time=30:00 $ cd $TMPDIR $ apptainer run /zfsstore/shared/singularity_images/h/halfpipe-1.3.2.sif --use-cluster |
According to the manual HALFpipe will expect the in and output files in a specific path /ext which you may have to bind mount for the container to find.
Ie. --bind /data1/projects/<PROJECT_DIR>:/ext but in general --bind /:/ext also works.
An example of a resulting halfpipe batch job:
#!/bin/bash
#SBATCH --job-name=halfpipe
#SBATCH --output=halfpipe.log.txt
#SBATCH --partition="cpu-zen4"
#SBATCH --time=1-0
#SBATCH --ntasks=1
#SBATCH --cpus-per-task=2
#SBATCH --mem=21504M
#SBATCH --array=1-221
if ! [ -x "$(command -v apptainer)" ]; then
module load apptainer
fi
apptainer run \
--contain --cleanenv \
--bind /:/ext \
/zfsstore/shared/singularity_images/h/halfpipe-1.3.2.sif \
--workdir /ext/<PATH_TO_DATA> \
--only-run \
--uuid <UUID> \
--subject-list /ext/<PATH_TO_DATA>/subject-list.txt \
--subject-chunks \
--only-chunk-index ${SLURM_ARRAY_TASK_ID} \
--nipype-n-procs 2 \
--keep some