The BerkeleyGW Package is a set of computer codes that calculates the quasiparticle
properties and the optical responses of a large variety of materials from bulk periodic crystals to
nanostructures such as slabs, wires and molecules.
Local support is not available. For detailed documentation and tutorials, visit the BerkeleyGW
website. The user forum can be found here.
Software Category: phys
To find the available versions and learn how to load them, run:
module spider berkeleygw
The output of the command shows the available BerkeleyGW
For detailed information about a particular BerkeleyGW
module, including how to load the module, run the
module spider command with the module’s full version label. For example:
module spider berkeleygw/3.0.1
||Module Load Command
||module load nvhpc/21.9 openmpi/3.1.6 berkeleygw/3.0.1
Users may build their own versions of BerkeleyGW if they wish to use a different compiler+MPI combination, or to choose individual optional packages. Please consult the official documentation.
Example Slurm script
We built BerkeleyGW with GPU support. It can only run on V100 and A100 GPUs. Please use the following Slurm script as a template.
#SBATCH -A myallocation # your allocation
#SBATCH -p gpu # do not change
#SBATCH --gres=gpu:1 # number of GPU devices
#SBATCH -C v100|a100 # can only run on V100 and A100
#SBATCH -N 1 # number of nodes
#SBATCH --ntasks-per-node=2 # number of tasks
#SBATCH -t 1-00:00:00 # walltime
module load nvompic berkeleygw
# see $BERKELEYGW_ROOT/bin for the available executables
We highly recommend running a benchmark to decide how many CPU cores and/or GPU devices you should use.
gpu, multi-core, phys