Lines 28 and 29 inform the user of where the Gaussian 16 output went, and that the job has now ended.
This may not be the sort of behavior that you would like. On line 26, the directory is changed to one level up, so that the scratch directory can be deleted, in line 27. This is separated from the standard output to keep things a bit cleaner, in case the user doesn't always want to read through other information output by the job or system.Īfter the Gaussian 16 run is finished, some job clean up occurs. The Gaussian 16 output is directed to another file, back in the original directory the job was launched from. In line 25, the Gaussian 16 program is finally called, and will operate on the. It relies on the input file being a ".com" file! Line 24 gets the base of the input file's filename to be used to create an output file. It is a good idea to use a scratch directory in a location such as /tmp, since some of the temporary files used by Gaussian 16 get quite large, which might fill up your home directory, and /tmp is usually set up to do faster reads and writes. In this case, it is set to the temporary directory the SGE sets up by default for a user's job, described by the SGE variable "TMPDIR" during the job's runtime. Lines 22-23 set up the Gaussian "scratch directory", which will be used as temporary storage while the job runs. Lines 19-20 set the location for the Gaussian 16 software, and load settings into the job's environment needed to run a Gaussian job. com file as input to be used with Gaussian 16). 14-17 do a bit of error checking, to make sure that something was passed to the script as an argument (hopefully the name of a. The rest of the file contains a list of shell commands to be run under the bash shell. It will also be used to name the output files, using the format. The job name will show up when checking on the job's progress using the "qstat" command as we shall see in just a moment. Line 11 is ready for the user to enter a job name, something meaningful for the job. Line 9 tells the SGE to use the bash shell to interpret the commands listed in the script. Lines 6 & 7 likewise lay out the locations for any error output (a resulting ".e" file) and standard output (a resulting ".o" file).
In line 4, such a parameter is set with "-cwd", which instructs SGE to execute the job in the current working directory wherein the job was submitted from. If a line starts with "#$", however, the SGE software interprets that as a line containing a parameter to set something up for the job. A line that begins with just "#" is a comment, everything after the initial "#" is ignored. Lines 4-11 establish some settings for SGE for this job. Line 1 is the "shebang" line, which sets the shell to be used to interpret the script. $g16root/g16/g16 > $SGE_O_WORKDIR/$oname.OUT.$JOB_IDĮcho "The job's output is in $oname.OUT.$JOB_ID." com fileĮcho "Please enter an input file for the job."
#Gaussian software job serial#
Here is a job script to run a serial Gaussian 16 job on teal: And, it may be helpful to have a serial version of the job to compare to a multi-threaded one for matters of performance measurement, to determine if any speedup was actually achieved by using more cores perhaps it is the case that more threads slowed down the software. Some inputs also may work better under serial processing. A serial job can be used to help ensure that "things work" without committing a lot of compute resources and complicating debugging of any problems. There are various reasons to run a serial job, though it may seem that if a multi-threaded job finishes faster that must be better.
The description, "serial job", means that one processor will be used by the Gaussian software for this job. The scripts aren't terribly complicated let's begin walking through a script to submit a serial Gaussian 16 job to the SGE on the teal cluster. In this case, jobs will be launched by using "job submission scripts", which are text files that contain settings for the SGE to manage the jobs, as well as bash shell commands to set other things up. If not, then there may be a few new concepts here for you if you are unfamiliar with "running jobs" on a Beowulf cluster. If you have run Gaussian on the Beowulf clusters at VCU before, this will be familiar to you. This page will demonstrate launching jobs under the SGE ( Sun Grid Engine) job management software. The Gaussian 16 software is available for users of the HPRC Core Facility at VCU.