Description
Gaussian is a general purpose computational chemistry software package. It provides state-of-the-art capabilities for electronic structure modeling. Use ghelp to get help
Restricted use
Available only for members of the Paderborn University. Apply for access: https://doku.pc2.uni-paderborn.de/pages/1902360/Licensed+Software
More information
Available Versions of gaussian
Version | Module | Available on |
---|---|---|
g16/c02 | chem/gaussian/g16/c02 | Noctua 2 |
g16/c01 | chem/gaussian/g16/c01 | Noctua 1, Noctua 2 |
g16/b01 | chem/gaussian/g16/b01 | Noctua 1, Noctua 2 |
g09/d01 | chem/gaussian/g09/d01 | Noctua 1, Noctua 2 |
g09/b01 | chem/gaussian/g09/b01 | Noctua 1, Noctua 2 |
g03 | chem/gaussian/g03 | Noctua 1, Noctua 2 |
This table is generated automatically. If you need other versions please click pc2-support@uni-paderborn.de.
Usage Hints for gaussian
If you need support in using this software or example job scripts please click pc2-support@uni-paderborn.de.
Computation with multiple CPUs on one or more compute nodes
An example of geometry optimization followed by analytical frequency calculation of caffeine molecule is presented here.
The Gaussian input file is given below. Please note:
%cpu=0-127 specifies the CPU cores (starting from 0) for the job on each compute node.
There is no need to specify the number of compute nodes in Gaussian input file. The control of multiple compute nodes is performed by Slurm.
Gaussian input
%mem=128GB %cpu=0-127 # b3lyp/6-311+g(d) opt freq` We love Café 0 1 O 2.383524 1.065652 0.000000 O 0.332955 -3.082123 0.000000 N -1.057329 -1.245565 0.000000 N -0.465323 2.223753 0.000000 N 1.319793 -1.009521 0.000000 N -2.286017 0.870360 0.000000 C 0.000000 0.927977 0.000000 C -1.140130 0.130872 0.000000 C 1.344937 0.405397 0.000000 C 0.190307 -1.864298 0.000000 C -1.831401 2.134481 0.000000 C -2.275717 -2.049078 0.000000 C 0.349100 3.433269 0.000000 C 2.606002 -1.713972 0.000000 H -2.459303 3.025784 0.000000 H -2.875732 -1.821570 0.894667 H -1.972156 -3.102774 0.000000 H -2.875732 -1.821570 -0.894667 H -0.326272 4.300612 0.000000 H 0.989438 3.453412 0.892939 H 0.989438 3.453412 -0.892939 H 3.392927 -0.950608 0.000000 H 2.684548 -2.353005 -0.891658 H 2.684548 -2.353005 0.891658
The Slurm jobscript is given below. Please note:
--nodes=2 specifies the computation uses 2 compute nodes. Please feel free to change this option to use one or more compute nodes.
--ntasks-per-node=1 specifies one task per compute node. Please use 1 because of the parallelism in Gaussian.
--cpus-per-task=128 specifies the number of CPU cores for each task. Here, 128 is used for Noctua 2. 40 can be used for Noctua 1. Please, make sure the number of CPU cores for this option is compatible with %cpu in the Gaussian input file.
The list of used compute nodes is generated automatically.
Slurm jobscript
#!/usr/bin/env bash #SBATCH --job-name=g16cafe #SBATCH --nodes=2 #SBATCH --ntasks-per-node=1 #SBATCH --cpus-per-task=128 #SBATCH --time=00:10:00 # # load Gaussian 16 # module reset module load chem/gaussian/g16/c02 # # create Gaussian scratch # MYSCRATCH=$(mktemp -d G16.XXXXX) export GAUSS_SCRDIR=${MYSCRATCH} # # run Gaussian computation # cnodes=$(scontrol show hostnames | paste -s -d,) g16 -w=${cnodes} caffeine.com
Computation with GPUs on one or more GPU compute nodes
Please note the following for the Gaussian computation with efficient GPU usage.
The GPUs and their control CPU cores should be assigned as close as possible in the Gaussian input file.
One control CPU core controls one and only one GPU.
GPUs are effective for large molecular DFT energies, gradients, and frequencies. They are less effective for post-HF calculations.
More information is available at https://gaussian.com/gpu
An example of geometry optimization followed by analytical frequency calculation of caffeine molecule is presented here.
The Gaussian input file is given below. Please note:
%cpu=0-127 specifies the CPU cores (starting from 0) for the job on each GPU compute node
%gpucpu=0,1,2,3=63,31,127,95 requests GPUs 0, 1, 2, and 3 for the calculation with CPU cores 63, 31, 127, and 95, respectively, as its controller for each GPU compute node. The GPUs and CPU affinity are determined by the GPU topology in GPU compute node. More information is available at NVIDIA A100 40GB with NVLINK#Topology.
There is no need to specify the number of GPU compute nodes in Gaussian input file. The control of multiple GPU compute nodes is performed by Slurm.
Gaussian input
%mem=128GB %cpu=0-127 %gpucpu=0,1,2,3=63,31,127,95 # b3lyp/6-311+g(d) opt freq We love Café 0 1 O 2.383524 1.065652 0.000000 O 0.332955 -3.082123 0.000000 N -1.057329 -1.245565 0.000000 N -0.465323 2.223753 0.000000 N 1.319793 -1.009521 0.000000 N -2.286017 0.870360 0.000000 C 0.000000 0.927977 0.000000 C -1.140130 0.130872 0.000000 C 1.344937 0.405397 0.000000 C 0.190307 -1.864298 0.000000 C -1.831401 2.134481 0.000000 C -2.275717 -2.049078 0.000000 C 0.349100 3.433269 0.000000 C 2.606002 -1.713972 0.000000 H -2.459303 3.025784 0.000000 H -2.875732 -1.821570 0.894667 H -1.972156 -3.102774 0.000000 H -2.875732 -1.821570 -0.894667 H -0.326272 4.300612 0.000000 H 0.989438 3.453412 0.892939 H 0.989438 3.453412 -0.892939 H 3.392927 -0.950608 0.000000 H 2.684548 -2.353005 -0.891658 H 2.684548 -2.353005 0.891658
The Slurm jobscript is given below. Please note:
--nodes=2 specifies the computation uses 2 GPU compute nodes. Please feel free to change this option to use one or more GPU compute nodes.
--ntasks-per-node=1 specifies one task per compute node. Please use 1 because of the parallelism in Gaussian.
--cpus-per-task=128 specifies the number of CPU cores for each task. Here, 128 is used for Noctua2. 40 can be used for Noctua1. Please, make sure the number of CPU cores for this option is compatible with %cpu in the Gaussian input file.
--partition=gpu requests the gpu partition (see also Node Types and Partitions
--gres=gpu:a100:4 specifies the GRES type to request appropriate GPUs (see also Running Compute Jobs#Using-GPUs)
The list of used GPU compute nodes is generated automatically.
Slurm jobscript
#!/usr/bin/env bash #SBATCH --job-name=g16cafe #SBATCH --nodes=2 #SBATCH --ntasks-per-node=1 #SBATCH --cpus-per-task=128 #SBATCH --time=00:10:00 #SBATCH --partition=gpu #SBATCH --gres=gpu:a100:4 # # load Gaussian 16 # module reset module load chem/gaussian/g16/c02 # # create Gaussian scratch # MYSCRATCH=$(mktemp -d G16.XXXXX) export GAUSS_SCRDIR=${MYSCRATCH} # # run Gaussian computation # cnodes=$(scontrol show hostnames | paste -s -d,) g16 -w=${cnodes} caffeine.com
Further information
Useful information for running Gaussian computation with the checkpoint file.