Difference between revisions of "Gaussian"

From UFRC
Jump to navigation Jump to search
 
(12 intermediate revisions by 2 users not shown)
Line 23: Line 23:
  
 
<!--LICENSING-->
 
<!--LICENSING-->
==Gaussian License==
+
===Gaussian License===
Please note that Gaussian is restricted software. Users who intend to use it must sign the '''Gaussian Confidentiality Agreement'''. This form is available in NPB 2335, 2238, or 2148. You may come by during office hours and sign the agreement. Once the form is signed, you will be added to the "gaussian" user group and will have access to the software.
+
Please note that Gaussian is restricted software. Users who intend to use it must sign the '''Gaussian Confidentiality Agreement'''. Please submit a [https://support.rc.ufl.edu help ticket] to request the license form.  
 
See [[Gaussian License]].
 
See [[Gaussian License]].
  
Line 49: Line 49:
 
* GAUSS_EXEDIR
 
* GAUSS_EXEDIR
 
* _DSM_BARRIER
 
* _DSM_BARRIER
 
 
<!--Configuration-->
 
<!--Configuration-->
 
{{#if: {{#var: conf}}|==Configuration==
 
{{#if: {{#var: conf}}|==Configuration==
Line 56: Line 55:
 
<!--Run-->
 
<!--Run-->
 
{{#if: {{#var: exe}}|==Additional Information==
 
{{#if: {{#var: exe}}|==Additional Information==
 +
 +
See [https://gaussian.com/gpu/ https://gaussian.com/gpu/] for information on using GPU(s) with Gaussian and [[GPU Access]] for information on how to set up a SLURM session with GPU(s).
 +
 
There are two mechanisms by which you can submit Gaussian Jobs.  
 
There are two mechanisms by which you can submit Gaussian Jobs.  
  
 
# Command-line batch Job Submission: See the next section.  
 
# Command-line batch Job Submission: See the next section.  
# Galaxy Framework: ''Galaxy'' can be accessed at: http://galaxy.rc.ufl.edu. Gaussian is listed in the "Tools" pane under "Chemistry". Please refer to [[Galaxy]] for more information on how to use this interface. For specific instructions concerning how to submit a Gaussian job using Galaxy, there is also a step-by-step procedure wiki entry: [[GAUSSIAN galaxy | Gaussian Galaxy]]
+
# Galaxy Framework: ''Galaxy'' can be accessed at: http://galaxy.rc.ufl.edu. Gaussian is listed in the "Tools" pane under "Chemistry". Please refer to [[Galaxy]] for more information on how to use this interface.  
 +
Please note that our version of Gaussian only supports shared-memory parallelism. This means that if you want to use more than one processor for a Gaussian job, you are limited to the number of processors in a single machine. You cannot run Gaussian across multiple machines on the Research Computing cluster.
  
 +
This requires a resource request of the following form where N is constrained by the number of "cores" (i.e. processors) in a single machine.  Most of the hipergator nodes have 32 cores per node.
 +
<pre>
 +
#SBATCH --nodes=1
 +
#SBATCH --ntasks=1
 +
#SBATCH --cpus-per-task=N
 +
</pre>
 
|}}
 
|}}
 
<!--PBS scripts-->
 
<!--PBS scripts-->
 
{{#if: {{#var: pbs}}|==Example Job Scripts==
 
{{#if: {{#var: pbs}}|==Example Job Scripts==
 +
<div class="mw-collapsible mw-collapsed" style="width:70%; padding: 5px; border: 1px solid gray;">
 +
''Expand this section to view an example Gaussian script.''
 +
<div class="mw-collapsible-content" style="padding: 5px;">
 +
The following is a sample job submission script for Gaussian. It loads "gaussian" module, which 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.
  
See the [[{{PAGENAME}} Job Scripts]] page for sample Gaussian job submission scripts.
+
'''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 (--cpus-per-task=N).'''
 +
==Automatic Processor Detection==
 +
<source lang=bash>
 +
#!/bin/bash
 +
#SBATCH --job-name=gaussianjob
 +
#SBATCH --output=gaussian.out
 +
#SBATCH --error=gaussian.err
 +
#SBATCH --mail-type=ALL
 +
#SBATCH --mail-user=YOUR-EMAIL-ADDRESS
 +
#SBATCH --time=01:00:00
 +
#SBATCH --nodes=1
 +
#SBATCH --ntasks=1
 +
#SBATCH --cpus-per-task=4    # number of CPU core to use
 +
#SBATCH --mem-per-cpu=4000
 +
#SBATCH --account=YOUR-GRUOP-NAME
 +
#SBATCH --qos=YOUR-GROUP-NAME
  
==Considerations==
+
module load gaussian
  
Please note that our version of Gaussian only supports shared-memory parallelism. This means that if you want to use more than one processor for a Gaussian job, you are limited to the number of processors in a single machine. You cannot run Gaussian across multiple machines on the Research Computing cluster.
+
which g09
  
This requires a resource request of the form
+
input=YOUR_g09_input.com
<pre>
+
output=YOUR_OUTPUT.log
#SBATCH --nodes=1
 
#SBATCH --ntasks=1
 
#SBATCH --cpus-per-task=N
 
</pre>
 
where N is constrained by the number of "cores" (i.e. processors) in a single machine.  Most of the hipergator nodes have 32 cores per node.  
 
  
 +
g09 < $input > $output 
 +
</source></div></div>
 
|}}
 
|}}
 
<!--Policy-->
 
<!--Policy-->
Line 89: Line 114:
 
|}}
 
|}}
 
==Using Gaussview GUI==
 
==Using Gaussview GUI==
When starting gv via a [[GUI Programs|SLURM GUI Session]] the following steps must be taken:
+
View instructions for GUI at [[Gaussian GUI]]
 
 
* Set gv to use MESAGL instead of OpenGL via '<code>export USE_MESAGL=1</code>'. See [http://csc.cnsi.ucsb.edu/docs/gaussview http://csc.cnsi.ucsb.edu/docs/gaussview] for reference.
 
=== Load modules ===
 
module load gaussian gui
 
=== Start a GUI session ===
 
:* Example: running Gaussview with 1 CPU, 8gb of memory, 4 hours of run time
 
gui start -e gv -c 1 -m 8 -t 4
 
* '''Note:''' Give the session from few seconds to a couple of minutes to start if the output is empty.
 
$ gui show
 
The output will look similar to the following e.g. with 1 active sessions and real passwords listed instead of 'REDACTED' in the example:
 
<pre>
 
Current GUI sessions:
 
______________________________________________________________________________
 
#:  JobID    Application  Type  State      Reason
 
1: 51019979 gv            gui  RUNNING   
 
------------------------------------------------------------------------------
 
Connection URLs:
 
1: https://gui3.rc.ufl.edu/13132/?password=REDACTED
 
 
 
[[GUI_Programs#Connect_From_a_Client_Computer|Attach to the resulting xpra session from your local computer]]
 
______________________________________________________________________________
 
 
 
Please copy a connection URL and paste it into a modern web browser's
 
location bar on your LOCAL computer located on campus or connected via VPN
 
</pre>
 
 
 
=== Connect To GUI Session ===
 
* Attach to the job session in your local browser
 
Copy and paste a session URI into a modern browser (tested on Firefox and Chrome/Chromium) e.g.
 
https://gui3.rc.ufl.edu/13132/?password=REDACTED
 
As a result the browser tab becomes a 'desktop canvas' and the GUI program window should be visible and can be resized or maximized to the limits of the browser tab window as normal.
 
 
 
=== Stop GUI Session ===
 
* To stop the GUI session, do the following, SessionID is the ID listed above, for example "1" in the above example.
 
gui stop SessionID
 
 
 
'''For help with running GUI programs, please refer to: [[GUI Programs|SLURM GUI Session]'''
 
 
 
 
<!--Faq-->
 
<!--Faq-->
 
{{#if: {{#var: faq}}|==FAQ==
 
{{#if: {{#var: faq}}|==FAQ==

Latest revision as of 14:39, 8 March 2023

Description

gaussian website  
Gaussian 16 is the latest in the Gaussian series of electronic structure programs. Gaussian 16 is used by chemists, chemical engineers, biochemists, physicists and others for research in established and emerging areas of chemical interest. Starting from the basic laws of quantum mechanics, Gaussian predicts the energies, molecular structures, and vibrational frequencies of molecular systems, along with numerous molecular properties derived from these basic computation types. It can be used to study molecules and reactions under a wide range of conditions, including both stable species and compounds which are difficult or impossible to observe experimentally such as short-lived intermediates and transition structures.

Gaussian License

Please note that Gaussian is restricted software. Users who intend to use it must sign the Gaussian Confidentiality Agreement. Please submit a help ticket to request the license form. See Gaussian License.

Required Modules

modules documentation

Serial

  • gaussian

Parallel (Shared memory with OpenMP)

  • gaussian

System Variables

  • HPC_GAUSSIAN_DIR
  • GV_DIR
  • g09root
  • GAUSS_BSDDIR
  • GAUSS_EXEDIR
  • _DSM_BARRIER

Additional Information

See https://gaussian.com/gpu/ for information on using GPU(s) with Gaussian and GPU Access for information on how to set up a SLURM session with GPU(s).

There are two mechanisms by which you can submit Gaussian Jobs.

  1. Command-line batch Job Submission: See the next section.
  2. Galaxy Framework: Galaxy can be accessed at: http://galaxy.rc.ufl.edu. Gaussian is listed in the "Tools" pane under "Chemistry". Please refer to Galaxy for more information on how to use this interface.

Please note that our version of Gaussian only supports shared-memory parallelism. This means that if you want to use more than one processor for a Gaussian job, you are limited to the number of processors in a single machine. You cannot run Gaussian across multiple machines on the Research Computing cluster.

This requires a resource request of the following form where N is constrained by the number of "cores" (i.e. processors) in a single machine. Most of the hipergator nodes have 32 cores per node.

#SBATCH --nodes=1
#SBATCH --ntasks=1
#SBATCH --cpus-per-task=N

Example Job Scripts

Expand this section to view an example Gaussian script.

The following is a sample job submission script for Gaussian. It loads "gaussian" module, which 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 (--cpus-per-task=N).

Automatic Processor Detection

#!/bin/bash
#SBATCH --job-name=gaussianjob
#SBATCH --output=gaussian.out
#SBATCH --error=gaussian.err
#SBATCH --mail-type=ALL
#SBATCH --mail-user=YOUR-EMAIL-ADDRESS
#SBATCH --time=01:00:00
#SBATCH --nodes=1
#SBATCH --ntasks=1
#SBATCH --cpus-per-task=4    # number of CPU core to use
#SBATCH --mem-per-cpu=4000
#SBATCH --account=YOUR-GRUOP-NAME
#SBATCH --qos=YOUR-GROUP-NAME

module load gaussian

which g09

input=YOUR_g09_input.com
output=YOUR_OUTPUT.log

g09 < $input > $output


Using Gaussview GUI

View instructions for GUI at Gaussian GUI

Citation

If you publish research that uses gaussian you have to cite it as follows:

Gaussian 09, Revision A.1, M. J. Frisch, G. W. Trucks, H. B. Schlegel, G. E. Scuseria, M. A. Robb, J. R. Cheeseman, G. Scalmani, V. Barone, B. Mennucci, G. A. Petersson, H. Nakatsuji, M. Caricato, X. Li, H. P. Hratchian, A. F. Izmaylov, J. Bloino, G. Zheng, J. L. Sonnenberg, M. Hada, M. Ehara, K. Toyota, R. Fukuda, J. Hasegawa, M. Ishida, T. Nakajima, Y. Honda, O. Kitao, H. Nakai, T. Vreven, J. A. Montgomery, Jr., J. E. Peralta, F. Ogliaro, M. Bearpark, J. J. Heyd, E. Brothers, K. N. Kudin, V. N. Staroverov, R. Kobayashi, J. Normand, K. Raghavachari, A. Rendell, J. C. Burant, S. S. Iyengar, J. Tomasi, M. Cossi, N. Rega, J. M. Millam, M. Klene, J. E. Knox, J. B. Cross, V. Bakken, C. Adamo, J. Jaramillo, R. Gomperts, R. E. Stratmann, O. Yazyev, A. J. Austin, R. Cammi, C. Pomelli, J. W. Ochterski, R. L. Martin, K. Morokuma, V. G. Zakrzewski, G. A. Voth, P. Salvador, J. J. Dannenberg, S. Dapprich, A. D. Daniels, Ö. Farkas, J. B. Foresman, J. V. Ortiz, J. Cioslowski, and D. J. Fox, Gaussian, Inc., Wallingford CT, 2009.