rcps-buildscripts
rcps-buildscripts copied to clipboard
Install Request: Octopus
Application: Octopus 15.1
Link: https://octopus-code.org/documentation/15/
Cluster: Young
Description: A real-space finite-difference (time-dependent) density-functional theory code.
License: open source, GPL-licensed.
Special versions or variants: +cuda +libvdwxc +berkeleygw
Only up to version 6 is available on Young at the moment.
Adapted from https://github.com/UCL-ARC/rcps-buildscripts/issues/584#issuecomment-2383436612
- Request an interactive session with 1 GPU
qrsh -pe smp 8 -l gpu=1,mem=4G,h_rt=4:00:00,tmpfs=20G -now no -P Free -A <MyProject>
- Set up a
load_scls.shscript
echo -e '#!/bin/bash\n# Source this.\n\nUCL_SCLS="rh-python38 devtoolset-11"\n\nfor a in ${UCL_SCLS}\ndo\n source /opt/rh/${a}/enable\ndone\nexport X_SCLS="${UCL_SCLS} ${X_SCLS}"' > $HOME/load_scls.sh
- Download Spack (tag: develop-2025-01-19) | Octopus 15.x is currently available in the
developbranch
git clone -c feature.manyFiles=true --branch develop-2025-01-19 --single-branch --depth 1 https://github.com/spack/spack.git ~/spack
- Setup Spack
module purge
# Load GCC 11.2.1 and Python 3.8.18
source ~/load_scls.sh
# Setup $SPACK_ROOT
source ~/spack/share/spack/setup-env.sh
- Install Octopus 15.1
# Octopus 15.x requires GCC 11.3 and above
# Install GCC 11.5.0
spack install [email protected]
# Add GCC 11.5.0 to Spack
spack compiler add $(spack location -i [email protected])
# Install Octopus 15.1 with CUDA 12.4 + BerkeleyGW + libvdwxc
spack install [email protected] +cuda +libvdwxc +berkeleygw ^[email protected] ^[email protected] +cuda fabrics=psm2,cma,ucx,ofi schedulers=sge
- Load Octopus and do a test run
# source ~/load_scls.sh
# source ~/spack/share/spack/setup-env.sh
spack load octopus
# create an inp file from https://octopus-code.org/documentation//14/tutorial/hpc/parallelization/?series=basic
cat <<EOF > inp
CalculationMode = td
UnitsOutput = eV_Angstrom
FromScratch = yes
Radius = 3.5*angstrom
Spacing = 0.18*angstrom
CH = 1.097*angstrom
%Coordinates
"C" | 0 | 0 | 0
"H" | CH/sqrt(3) | CH/sqrt(3) | CH/sqrt(3)
"H" | -CH/sqrt(3) |-CH/sqrt(3) | CH/sqrt(3)
"H" | CH/sqrt(3) |-CH/sqrt(3) | -CH/sqrt(3)
"H" | -CH/sqrt(3) | CH/sqrt(3) | -CH/sqrt(3)
%
EOF
# Run Octopus calculation
octopus > out
- Create Modules (not tested, TBC...)
# Create TCL modules for all currently installed packages
spack module tcl refresh
TBC...