Starting with version 5.0, the core parts of Q-Chem calculations can be accelerated using the BrianQC GPU module. It does so by providing routines for computing all components of the Fock matrix (Eq. (4.18)): the core Hamiltonian, Coulomb, exchange, and exchange-correlation (Eq. (5.9)) integrals, along with their first derivatives and the most time-consuming parts of their second derivatives. This can lead to significant speedups when computing Hartree–Fock and density functional theory energies, gradients, vibrational frequencies, and other calculations requiring these quantities. Range-separated hybrid density functionals, where the exchange contribution is split into two terms (Eq. (5.12)), are also supported.
In order to invoke BrianQC, pass the -gpu flag when starting Q-Chem. Because BrianQC does not accelerate all parts of Q-Chem calculations, and GPU acceleration works transparently with OpenMP threading, it is still important to parallelize the remaining parts of a calculation using OpenMP threading.
qchem -gpu -nt nthreads infile outfile
Requirements for using BrianQC are:
A separate BrianQC license
A 64-bit Linux-based operating system
An NVIDIA GPU based on the Kepler, Maxwell, Pascal, Volta, or Turing architecture
A basis set with angular momentum or lower functions
Only one Q-Chem calculation running per GPU
To learn more, visit https://www.brianqc.com/.