Overview

Using

Use the module name dftb to discover versions available and to load the application.

Due to the specific installation of this application, dftb must be run using srun dftb+ in both the sbatch and salloc processes.

Multicore

Some of the DFTB versions have been built with MPI to allow processing across multiple nodes - see the tables below.

Please read section 2.11 Parallel of the manual to understand how to configure your input to effect the parallel behavior of your code.

For example:

# sbatch file:
#SBATCH --nodes=2
#SBATCH --cpus-per-task=16
export OMP_NUM_THREADS=$SLURM_CPUS_PER_TASK

# Within: dftb_in.hsd
Parallel {
  Groups = 2
  UseOmpThreads = Yes
}

You can the confirm configuration within the output by noticing:

# Within the output:
MPI processes:               2
OpenMP threads:              16

Illegal Instruction Issue

Program received signal SIGILL: Illegal instruction.
Backtrace for this error:
#0  0x2b4ce98af3ff in ???
...
#13  0x42591c in ???
#14  0xffffffffffffffff in ???
srun: error: m003: task 0: Illegal instruction
srun: launch/slurm: _step_signal: Terminating StepId=2328549.0

Using on Beartooth

Version

Notes

22.2

Provides multi node parallelism. It has not been built with the optional packages: ARPACK-NG, ELSE, MAGNA nor PLUMED2.

Note: This is the first version that installs DFTB via a conda environment, previous versions were manually installed. MPI functionality is provided by and packaged within the conda environment itself, and does not require us to load compilers/openmpi libraries. To utilize MPI your command line needs to take the form:

# 'num of processes' = 'num of nodes' x 'num of tasks per node'
mpirun -n <num of processes> dftb+

This conda environment, once this module version has been loaded, uses python 3.11.2.

21.2_mdForces

Provides multi node parallelism. This version is build from the specific mdForces tree branch off of the main application. It has been built with the optional package: ARPACK-NG

22.1-ompi

Provides multi node parallelism. To utilize MPI your command line needs to take the form:

srun dftb+

Using on Teton

Version

Notes

21.2

Does provide multi node parallelism (which in itself does not support the ARPACK-NG library). It has not been built with the optional packages: ELSE, MAGNA nor PLUMED2.

21.2_mdForces

Does provide multi node parallelism. This version is build from the specific mdForces tree branch off of the main application.

20.1

Version 20.1 has been built with the optional ARPACK-NG library for excited state DFTB functionality. It does NOT provide multi node parallelism.