Difference between revisions of "Gaussian Job Scripts"
Jump to navigation
Jump to search
Line 13: | Line 13: | ||
#PBS -j oe | #PBS -j oe | ||
#PBS -m abe | #PBS -m abe | ||
− | #PBS -M | + | #PBS -M yingsun@ufl.edu |
#PBS -l nodes=1:ppn=8 | #PBS -l nodes=1:ppn=8 | ||
#PBS -l walltime=00:30:00 | #PBS -l walltime=00:30:00 | ||
Line 62: | Line 62: | ||
</source> | </source> | ||
+ | |||
==Force Gaussian A02== | ==Force Gaussian A02== | ||
<source lang=bash> | <source lang=bash> |
Revision as of 11:58, 29 January 2013
The following is a sample bash submission script. It detects the CPU type of the machine on which your job runs and chooses the appropriate version of Gaussian for best performance. If OMP_NUM_THREADS is set, Gaussian will use it for the number of processors unless %nproc or %nprocshared is set in your Gaussian input file.
The number of threads specified to Gaussian via either method above must be consistent with the number of processors in your resource request i.e (nodes=1:ppn=N).
Automatic Processor Detection
#!/bin/bash
#
#PBS -r n
#PBS -N g09
#PBS -o stdout
#PBS -e stderr
#PBS -j oe
#PBS -m abe
#PBS -M yingsun@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
Force Gaussian A02
#!/bin/bash
#
#PBS -r n
#PBS -N g09
#PBS -o stdout
#PBS -e stderr
#PBS -j oe
#PBS -m abe
#PBS -M yingsun@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"
;;
*AuthenticAMD*)
arch="amd"
;;
*)
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