MOLECULAR DYNAMICS PERFORMANCE GUIDE - COMPUTE CANADA

SOFTWARE DETAILS

ID=23, NAMD2.cuda.ofi

  • Module/Version: namd-ofi-smp/2.14
  • Toolchain/Version: iimklc/2020a
  • CPU instruction set: avx2
  • Example job submission script:
    1. #!/bin/bash
    2. #SBATCH --ntasks=2
    3. #SBATCH --cpus-per-task=6
    4. #SBATCH --gpus=p100:1
    5. #SBATCH --mem-per-cpu=2000 --time=1:0:0
    6. # Usage: sbatch $0 number_of_steps
    7. INPFILE=namd.in
    8. STEPS=$1
    9. TMPFILE=tf_${SLURM_JOBID}
    10. RUN_IN=run_${SLURM_JOBID}.in
    11. cp ${INPFILE} ${RUN_IN}
    12. echo numsteps $1 >> run_${SLURM_JOBID}.in
    13. ml StdEnv/2020 cuda/11.0 namd-ofi-smp/2.14
    14. echo ${SLURM_NODELIST} running on ${SLURM_CPUS_PER_TASK} cores
    15. cat /proc/cpuinfo | grep "model name" | uniq
    16. (( NUM_PES=$SLURM_CPUS_PER_TASK - 1 ))
    17. srun --mpi=pmi2 namd2 ++ppn $NUM_RES +idlepoll ${RUN_IN} > ${TMPFILE}
  • Benchmark submission script:
    1. #!/bin/bash
    2. #SBATCH --ntasks=1
    3. #SBATCH --cpus-per-task=6
    4. #SBATCH --gpus=p100:1
    5. #SBATCH --mem-per-cpu=2000 --time=1:0:0
    6. # Usage: sbatch $0 number_of_steps
    7. INPFILE=namd.in
    8. STEPS=$1
    9. TMPFILE=tf_${SLURM_JOBID}
    10. RUN_IN=run_${SLURM_JOBID}.in
    11. cp ${INPFILE} ${RUN_IN}
    12. echo numsteps $1 >> run_${SLURM_JOBID}.in
    13. ml StdEnv/2020 cuda/11.0 namd-ofi-smp/2.14
    14. echo ${SLURM_NODELIST} running on ${SLURM_CPUS_PER_TASK} cores
    15. cat /proc/cpuinfo | grep "model name" | uniq
    16. (( NUM_PES=$SLURM_CPUS_PER_TASK - 1 ))
    17. srun --mpi=pmi2 namd2 ++ppn $NUM_PES +idlepoll ${RUN_IN} > ${TMPFILE}