Gaussian Job Scripts

From UFRC
Revision as of 17:52, 17 September 2012 by Yingz (talk | contribs)
Jump to navigation Jump to search

The following is a sample bash submission script. It automatically detects the CPU type of the machine on which your job runs and choose the appropriate version of Gaussian for better performance.

#!/bin/bash
#
#PBS -r n
#PBS -N g09
#PBS -o stdout
#PBS -e stderr
#PBS -j oe
#PBS -m abe
#PBS -M USER@ufl.edu
#PBS -l nodes=1:ppn=8
#PBS -l walltime=00:30:00
#PBS -l pmem=2000mb

module load gaussian

cpuFamily=`grep -m 1 vendor /proc/cpuinfo | awk -F : '{print $2}'`

case "${cpuFamily}" in
    *GenuineIntel*)
        arch="em64t"
	grep -i sse4 /proc/cpuinfo > /dev/null
        if [ $? -eq 0 ]
	then 
		arch="em64t-sse4"
	else
		arch="em64t-c01"
	fi
	;;
    *AuthenticAMD*)
        arch="amd"
	grep -i sse4 /proc/cpuinfo > /dev/null
        if [ $? -eq 0 ]
        then
                arch="amd-sse4"
	else 
		arch="amd-c01"
	fi
        ;;
    *)
        echo "Gaussian has no dedicated version for CPU type ${cpuFamily}."
        echo "Defaulting to Intel/EM64T version."
        arch="em64t"
        ;;
esac

source ${g09root}/$arch/bsd/g09.profile

which g09

input=$YOUR_g09_input.com
output=$YOUR_OUTPUT.log

cd $PBS_O_WORKDIR

g09 < $input > $output