#!/bin/bash
#SBATCH --time 12:00:00
#SBATCH --partition=cpu-clx
#SBATCH --nodes=1
#SBATCH --ntasks-per-node=24
#SBATCH --cpus-per-task=4
#SBATCH --job-name=siesta
module load openmpi/gcc/5.0.3
# Load siesta
# Check the table above to find which module to load, depending on the version to be used
module load siesta/5.0.1
# Set the number of OpenMP threads as given by the SLURM parameter "cpus-per-task"
export OMP_NUM_THREADS=${SLURM_CPUS_PER_TASK}
# Adjust the maximum stack size of OpenMP threads
export OMP_STACKSIZE=512m
# Do not use the CPU binding provided by slurm
export SLURM_CPU_BIND=none
# Binding OpenMP threads
export OMP_PLACES=cores
export OMP_PROC_BIND=close
# Important: Do not use srun when SLURM_CPU_BIND=none in combination with the pinning settings defined above
# Carefully check the best binding options infor your case
mpirun --bind-to core --map-by numa siesta |