Gaussian 09 + Linda
In order to use Gaussian, you must first be added to the Gaussian group. You must contact the sysadmins in order to be added to the Gaussian group.
Info | ||
---|---|---|
| ||
Thank you for your e-mail. In response to your first point, although our license agreement does not explicitly permit use of the software by collaborators of a given site, it is our intention that access to the software may be provided to collaborators - yet only while they are physically at the licensed site/campus (in other words, remote access to the software by collaborators is not permitted). If the collaborator wishes to install/useGaussian at his or her own site, then they would need to obtain a license for that site. |
Gaussian scripts must be submitted to SGE with a wrapper script. You are encouraged to use this script, as SGE has to pass information to Linda upon submission. The job submission script is at the end of this document.
Remember to load the g09_B.01 a gaussian environment module before submitting jobs.
You can load the module with the following commandFor example:
No Format |
---|
module load g09_/B.01 |
To submit a Gaussian job, a copy of this the script and your *.com file should exist in the same directory alone. This is a precaution against Gaussian accidentally deleting any of your files. Once the script and the job are in the same directory, the instances of CHANGE_ME in the script have to be changed to the part of the name of the job script before ".com" . Your job must end in .com to work with this script.
Then run the appropriate qsub command, which is dependent on which the type of job you are submitting.
For a serial job
(if you have named the submission script "g09sub")
No Format |
---|
qsub g09sub |
For a single machine SMP job
The following must be in the link0 section in your Gaussian .com file.
No Format |
---|
%NProcShared=<number of cores> |
You should replace <number of cores> with the desired number of cores in the node (matching your job's -pe gaussian-sm entry), and execute:
(if you have named the submission script "g09sub")
No Format |
---|
qsub -pe gaussian-sm <number of cores> g09sub |
For a linda job
The following must be in the link0 section of your Gaussian .com file (at the very least, at the top).
No Format |
---|
%LindaWorkers=LINDA %NProcShared=12 |
For the job submission, replace the argument after gaussian-linda with a multiple of 12, then execute:
(if you have named the submission script "g09sub")
The number should reflect the total number of cores you want as a multiple of 12.
No Format |
---|
qsub -pe gaussian-linda <number of cores> g09sub |
Info |
---|
On Neon, there are two Linda PEs
|
Linda output
Linda's output can seem confusing. In the following example, two nodes will be utilized by linda, with 12 cores per node. The hosts that are running the job are compute-13-367 and compute-13-369.
No Format |
---|
%LindaWorkers=compute-13-367,compute-13-369 SetLPE: input flags="" SetLPE: new flags=" -nodelist 'compute-13-367.local compute-13-369.local'" Will use up to 2 processors via Linda. %NProcShared=12 Will use up to 12 processors via shared memory. |
Code Block | ||||
---|---|---|---|---|
| ||||
#!/bin/bash #$ -S /bin/bash #$ -j y #$ -cwd #$ -V #$ -N CHANGE_ME ### The below variable should not include the .com ending of you gaussian input file, ### just the name before that. FILENAME=CHANGE_ME ### Make sure that both the CHANGE_ME by the FILENAME= and the CHANGE_ME 3 lines above ### in the '#$ -N CHANGE_ME' line match, or your script error will be named strangely. ### !!!!!!!!! ### ### Only uncomment the following GAUSS_SCRDIR line if you give it an argument. ### It will default to /scratchnfsscratch/Users/$USER if left commented. If blank and not commented out, ### it will spew files into your home directory, and possibly delete things. #GAUSS_SCRDIR= ### This script and your FILENAME input file should be in a separate ### directory to avoid accidental deletion of files. ### ### You should not need to edit anything after here. ####################################################################################### echo ---------------------------------------------------------------- echo Starting Job on `hostname` at `date +%a\ %D\ %r` echo ---------------------------------------------------------------- echo Working directory: $SGE_O_WORKDIR echo Filename: $FILENAME echo Central node: `hostname -s` echo Job ID: $JOB_ID echo Scratch directory: $GAUSS_SCRDIR LINDA=$(cat $PE_HOSTFILE |cut -f1 -d .|tr '\n' ',' | sed 's/,$//') echo Host list: $LINDA sed s/LINDA/$LINDA/ $FILENAME.com|g09 &> $FILENAME.out if [ $? = '0' ]; then echo '' else echo Something is wrong, check the .out file. fi echo --------------------------------------------------------------- echo Job finished on `hostname` at `date +%a\ %D\ %r` echo --------------------------------------------------------------- |