turbomole
Description
TURBOMOLE is an ab initio computational chemistry program that implements various quantum chemistry methods.
Restricted use
Apply for access: https://doku.pc2.uni-paderborn.de/pages/1902360/Licensed+Software
More information
- https://www.turbomole.org/ - Refer to $TURBODIR/DOC after loading the module - Call TmoleX to start the GUI
Available Versions of turbomole
Version | Module | Available on |
---|---|---|
tmolex24 | chem/turbomole/tmolex24 | Noctua 1, Noctua 2 |
tmolex23 | chem/turbomole/tmolex23 | Noctua 1, Noctua 2 |
tmolex22 | chem/turbomole/tmolex22 | Noctua 1, Noctua 2 |
tmolex16 | chem/turbomole/tmolex16 | Noctua 1, Noctua 2 |
7.8.1 | chem/turbomole/7.8.1 | Noctua 1, Noctua 2 |
7.8 | chem/turbomole/7.8 | Noctua 1, Noctua 2 |
7.7.1 | chem/turbomole/7.7.1 | Noctua 1, Noctua 2 |
7.7 | chem/turbomole/7.7 | Noctua 1, Noctua 2 |
7.6 | chem/turbomole/7.6 | Noctua 1, Noctua 2 |
7.1 | chem/turbomole/7.1 | Noctua 1, Noctua 1, Noctua 2, Noctua 2 |
This table is generated automatically. If you need other versions please click pc2-support@uni-paderborn.de.
Usage Hints for turbomole
If you need support in using this software or example job scripts please click pc2-support@uni-paderborn.de.
How to start TmoleX
Proceed as for starting GaussView but load a TmoleX module instead of a Gaussian module. The TmoleX
command then starts the GUI, e.g.:
$ ml chem/turbomole/tmolex24
$ TmoleX
Then you can create project with new molecules by clicking “Import Coordinate File”, “Open 3D Molecular Builder”, “Draw 2D”, or “SMILES to 3D” as shown in the figure below. More detailed usage can be found in $TURBODIR/DOC
after loading a turbomole module, e.g. ml chem/turbomole/7.8
or the TmoleX documentation at TURBOMOLE.
How to create Turbomole input
For simple calculations it is convenient to create the input file control
by using a text editor, e.g. vim.
$atoms
basis = def2-TZVP
$coord file=coord
$dft
functional pbe0
$rij
$title Geometry optimization (RIJ-PBE0 with def2-TZVP)
$end
In addition, Turbomole provides the define
command, which is an interactive input generator, for more complex input file. Also you can use the TmoleX
GUI program (see above) to create the Turbomole input file.
How to run Turbomole calculations
Some of the Turbomole modules are parallelized by MPI and/or OpenMP. Example Slurm jobscripts for OpenMP and MPI parallelization on a single node are shown below. The MPI parallelized modules are not recommended for performance reasons (see 3.4 Parallel Runs in the Turbomole User’s Manual, Version 7.8). This is also confirmed by our tests on Noctua 2.
run OpenMP parallel jobs
For the created Turbomole input and coordinate files, the Slurm jobscript below runs an OpenMP parallelized RI-DFT calculation on one compute node of Noctua 2 using 128 CPU cores.
Note: We recommend the execution of Turbomole using the OpenMP parallelization on one CPU node.
#!/usr/bin/env bash
#SBATCH --job-name=tm_omp
#SBATCH --time=00:30:00
#SBATCH --nodes=1
#SBATCH --ntasks=1
#SBATCH --cpus-per-task=128
#
module reset
module load chem/turbomole/7.8
#
# parallel SMP environment
#
ulimit -s unlimited
export PARA_ARCH=SMP
export PARNODES=${SLURM_CPUS_PER_TASK}
export TM_PAR_OMP=on # use OpenMP parallelized modules
export OMP_PLACES=cores
export OMP_PROC_BIND=close
#
# perform the RI-DFT calculation
#
workdir=/dev/shm/tm_omp_${SLURM_JOB_ID}
mkdir -p ${workdir}
cp control coord ${workdir}; cd ${workdir}
jobex -ri -np ${SLURM_CPUS_PER_TASK} -outfile ${SLURM_SUBMIT_DIR}/jobex.out
cp ${workdir}/* ${SLURM_SUBMIT_DIR}
run MPI parallel jobs
For the created Turbomole input and coordinate files, the Slurm jobscript below runs an MPI parallelized RI-DFT calculation on one compute node of Noctua 2 using 128 CPU cores.
run GPU enabled jobs
For the created Turbomole input and coordinate files, the Slurm jobscript below runs a GPU enabled RI-DFT calculation on one GPU node of Noctua 2 using 128 CPU cores and 1 NVIDIA A100 GPU.
The following output in jobex.out
confirms the usage of the A100 GPU in the calculation.
Please note:
known limitation: RI-J integrals are done on the CPU, so using many cores on CPUs can be more efficient than to use CPU and GPU but with less CPU cores.
more detailed information for GPU enabled Turbomole can be found in
${TURBODIR}/DOC/README-GPU.txt
.
Further information
Turbomole documentation: https://www.turbomole.org/turbomole/turbomole-documentation/
Turbomole users forum: https://forum.turbomole.org/