Running using SLURM ------------------- Test Project ~~~~~~~~~~~~ Example SLURM-script .. code-block:: bash #!/bin/bash #SBATCH --job-name=sassena #SBATCH --nodes=1 # run all processes on a single node #SBATCH --ntasks-per-node=4 # number of MPI tasks (i.e. processes) #SBATCH --cpus-per-task=1 # number of cores per MPI task #SBATCH --mem-per-cpu=2G # 96GB RAM per node, 2 sockets * 12 cores * 2 threads #SBATCH --output=out_%j.log # file with program output on screen, contains job number echo "Date = $(date)" echo "Hostname = $(hostname -s)" echo "Working Directory = $(pwd)" echo "" echo "Number of Nodes Allocated = $SLURM_JOB_NUM_NODES" echo "Number of Tasks Allocated = $SLURM_NTASKS" echo "Number of Cores/Task Allocated = $SLURM_CPUS_PER_TASK" echo "" mpiexec sassena --config scatter.xml mv signal.h5 my_favourite_sample.h5 To use OpenMP threading alongside MPI, increase ``--cpus-per-task`` and pass the thread count to Sassena: .. code-block:: bash #SBATCH --ntasks-per-node=4 # number of MPI tasks #SBATCH --cpus-per-task=4 # OpenMP threads per MPI task export OMP_NUM_THREADS=$SLURM_CPUS_PER_TASK mpiexec sassena --config scatter.xml --limits.computation.threads=$SLURM_CPUS_PER_TASK mv signal.h5 my_favourite_sample.h5