Orca
The program ORCA is a electronic structure program package written by F. Neese, with contributions from many current and former coworkers and several collaborating groups. The binaries of ORCA are available free of charge for academic users for a variety of platforms.
Website: https://orcaforum.kofo.mpg.de/app.php/portal
ORCA comes with a license, which prohibits us to “just install and everyone can use it”. We, therefore, need individual groups to print and sign the linked ORCA license ). Subsequently, send it via internal mail (“Hauspost”) to “ZDV HPC Group”. We will then set the permissions accordingly.
When doing so, please include (the send EULAG does not contain this information):
- name
- username
- e-mail address (in case we need to approach you)
- and - particularly - the project name of your MOGON project.
Running ORCA in parallel
To start multiple ORCA processes, use the PAL
keyword in the keyword list:
where <NUM>
is the number of processes you want to start.
$EBROOTORCA/orca
in the job script. This is necessary in parallel mode so that ORCA will correctly find its executables.Hint on the Use of Parallel ORCA from the ORCA Manual
Thus, all major modules are parallelized in the present version. The efficiency is such that for RI-DFT perhaps up to 16 processors are a good idea while for hybrid DFT and Hartree-Fock a few more processors areappropriate. Above this, the overhead becomes significant and the parallelization loses efficiency. Coupled-cluster calculations usually scale well up to at least 8 processors but probably it is also worthwhile to try 16. For Numerical Frequencies or Gradient runs it makes sense to use as many processors as 3*Number of Atoms. If you run a queuing system you have to make sure that it works together with ORCA in a reasonable way.
Memory Usage
Memory usage is controlled by %maxcore
. The keyword specifies the memory per core in MB that ORCA is allowed to use.
In principle, you should not request more than 75% of the available physical memory, since ORCA occasionally uses more than the %maxcore
setting indicates.
Example
In the following example 2000 MB
memory per core is allocated to ORCA. Since 4 CPU cores have been requested, this implies that the total amount of memory required by ORCA is: $4 \cdot 2000MB = 8000MB$