Skip to content

Commit

Permalink
switch singularity to apptainer
Browse files Browse the repository at this point in the history
  • Loading branch information
mckenziephagen committed Oct 15, 2024
1 parent 69b884f commit 2e6d03b
Showing 1 changed file with 17 additions and 17 deletions.
34 changes: 17 additions & 17 deletions docs/source/resources/mriqc.sbatch
100644 → 100755
Original file line number Diff line number Diff line change
@@ -1,21 +1,16 @@
#!/bin/bash

#NOTE: These should work with Slurm HPC systems,
# but these specific paramters have only been tested on
# but these specific parameters have only been tested on
# Stanford's Sherlock. Some parameters may need to be
# adjusted for other HPCs, specifically --partition.

#SBATCH --job-name mriqc
#SBATCH --partition normal #TODO: update for your HPC

#NOTE: The --array parameter allows multiple jobs to be launched at once,
# and is generally recommended to efficiently run several hundred jobs
# at once.

# TODO: adjust the range for your dataset; 1-n%j where n is the number of
# participants and j is the maximum number of concurrent jobs you'd like
# to run.

#SBATCH --array=1-216%50
#SBATCH --time=1:00:00 #NOTE: likely longer than generally needed
#SBATCH --ntasks 1
Expand All @@ -26,31 +21,36 @@
#SBATCH --error log/%x-%A-%a.err
#SBATCH --mail-user=%[email protected] #TODO: update for your email domain
#SBATCH --mail-type=ALL

# ------------------------------------------

unset PYTHONPATH
STUDY="/scratch/users/mphagen/mriqc-protocol" #TODO: replace with your path

MRIQC_VERSION="24.0.0" #TODO: update if using a different version
BIDS_DIR="ds002785" #TODO: replace with path to your dataset

MRIQC_VERSION="24.0.2" #TODO: update if using a different version
BIDS_DIR="${STUDY}/ds002785" # TODO: replace with path to your dataset
OUTPUT_DIR="${BIDS_DIR}/derivatives/mriqc-${MRIQC_VERSION}"

SINGULARITY_CMD="singularity run -e mriqc-${MRIQC_VERSION}.simg"
APPTAINER_CMD="apptainer run -e mriqc_${MRIQC_VERSION}.sif"

#NOTE: The first clause in this line selects a row in participants.tsv
# Offset subject index by 1 because of header in participants.tsv
subject_idx=$(( ${SLURM_ARRAY_TASK_ID} + 1 ))

##NOTE: The first clause in this line selects a row in participants.tsv
# using the system generated array index variable SLURM_ARRAY_TASK_ID.
# This is piped to grep to isolate the subject id. The regex should
# work for most subject naming conventions, but may need to be modified.

subject=$( sed -n ${SLURM_ARRAY_TASK_ID}p ${BIDS_DIR}/participants.tsv \
# work for most subject naming conventions, but may need to be modified.
subject=$( sed -n ${subject_idx}p ${BIDS_DIR}/participants.tsv \
| grep -oP "sub-[A-Za-z0-9_]*" )

echo Subject $subject

cmd="${SINGULARITY_CMD} ${BIDS_DIR} ${OUTPUT_DIR} participant \
cmd="${APPTAINER_CMD} ${BIDS_DIR} ${OUTPUT_DIR} participant \
--participant-label $subject \
-w $PWD/work/ \
--omp-nthreads 8 --mem 10 \
--verbose-reports"
--omp-nthreads 10 --nprocs 12 \
--verbose-reports"

echo Running task ${SLURM_ARRAY_TASK_ID}
echo Commandline: $cmd
Expand Down

0 comments on commit 2e6d03b

Please sign in to comment.