The GAUSSIAN program system

Gaussian is a computational chemistry software program system initially released in 1970. Gaussian has a rather low user threshold and a tidy user setup, which, together with a broad range of possibilities and a graphical user interface (gaussview), might explain its popularity in academic institutions.

Online info from vendor

Running Gaussian on Fram

To see available versions when logged into Fram issue command

module avail Gaussian

To use Gaussian, type

module load Gaussian/<version>

specifying one of the available versions.

  • Run script example:
#!/bin/bash -l                                                                                                                              
################### Gaussian Job Batch Script Example ###################                                                                   
# Section for defining queue-system variables:                                                                                              
#-------------------------------------                                                                                                      
# SLURM-section                                                                                                                             
#SBATCH --account=nnXXXXk                                                                                                                   
#SBATCH --nodes=4 --ntasks-per-node=32                                                                                                      
#SBATCH --time=1-20:30:00                                                                                                                   
######################################                                                                                                      
# Section for defining job variables and settings:                                                                                          
#-------------------------------------                                                                                                      

input=water # Name of input without extention                                                                                               
extention=com # We use the same naming scheme as the software default                                                                       

module load Gaussian/g16_B.01

# This one is important; setting the heap-size for the job to 20GB:                                                                         
export GAUSS_LFLAGS2="--LindaOptions -s 20000000"
#Creating the gaussian temp dir:                                                                                                            
export GAUSS_SCRDIR=/cluster/work/users/$USER/$SLURM_JOB_ID
mkdir -p $GAUSS_SCRDIR

# Creating aliases and moving files to scratch:                                                                                             
submitdir=$SLURM_SUBMIT_DIR
tempdir=$GAUSS_SCRDIR

cd $submitdir
cp $input.com $tempdir
cd $tempdir

# Running program, pay attention to command name:                                                                                           

time g16.ib $input.com > g16_$input.out

# Cleaning up and moving files back to home/submitdir:                                                                                      

cp g16_$input.out $submitdir
cp $input.chk $submitdir

exit 0

Download run script example here: run_g16.sh

  • Water input example:
chk=water
%mem=500MB
#p b3lyp/cc-pVDZ opt

              Water optimizing example

0 1
O
H 1 0.96
H 1 0.96 2 109.471221

Download water input example: water.com

Important aspects of Gaussian setup on Fram:

On Fram, we have not allocated swap space, that means the heap size for the linda processes in Gaussian is very important for making parallell jobs work. The line

export GAUSS_LFLAGS2="--LindaOptions -s 20000000"

contains info about the heap size. 20 GB (the number above) is sufficient for most calculations, but if you plan to run 16 nodes or more, you may need to increase this number to at least 30 GB.

As for the Gaussian setup on Stallo, we have "tricked" the software to use rsocket libraries and Infiniband network, this is done by introducing explicit IB network addresses into input files. This is done with a wrapper around the gXX executable, called gXX.ib. This wrapper does two things; first it introduces explicit IB network adresses into input file, secondly it distributes the jobs onto two linda processes per node and halves the processes per linda compared to processes per node.

Syntax is shown here:

g16.ib $input.com > g16_$input.out

Please inspect the run script example carefully before submitting Gaussian jobs on Fram!

About Gaussian on Fram:

After thorough testing, we would generally advice user to run 4-8 nodes with heap-size 20 GB (see above) and 2 Linda instances per node for running Gaussian on Fram. Note that due to the "two-Lindas-per-node" policy, memory demand is approximately the double as similar jobs on Stallo.

Please consider the memory size in your input if jobs fails; the %mem number. Job example is set up with 500MB, test-jobs were ran with 2000MB. Memory demand also increases with an increasing number of cores, for jobs with 16 nodes or more - doubling the %mem number would be advicable. But this would also limit the size of problems possible to run at a certain number of cores.

Citation

When publishing results obtained with the software referred to, please do check the developers web page in order to find the correct citation(s).

results matching ""

    No results matching ""