jureca @ FZ-Jülich
Find information about the Jureca system here.
Pre-installed versions
You may use the pre-installed versions:
module load intel-para
module load GPAW
In case you are happy with these versions, you need to install the setups (next point) and you are done.
Setups
The setups are not defined in the pre-installed vesrion, so we need to install them ourselves:
cd
GPAW_SETUP_SOURCE=$PWD/source/gpaw-setups
mkdir -p $GPAW_SETUP_SOURCE
cd $GPAW_SETUP_SOURCE
wget https://wiki.fysik.dtu.dk/gpaw-files/gpaw-setups-0.9.11271.tar.gz
tar xzf gpaw-setups-0.9.11271.tar.gz
Let gpaw know about the setups:
export GPAW_SETUP_PATH=$GPAW_SETUP_SOURCE/gpaw-setups-0.9.11271
Using the module environment
It is very handy to add our installation to the module environment:
cd
mkdir -p modulefiles/gpaw-setups
cd modulefiles/gpaw-setups
echo -e "#%Module1.0\nprepend-path GPAW_SETUP_PATH $GPAW_SETUP_SOURCE/gpaw-setups-0.9.11271" > 0.9.11271
We need to let the system know about our modules
(add this command to ~/.profile
or ~/.bashrc
to execute automatically):
module use $HOME/modulefiles
such that we also see them with:
module avail
Building from trunk
In case that you need a newer version than is installed, you might want to install gpaw yourself.
We first get ASE trunk:
ASE_SOURCE=$HOME/source/ase
mkdir -p $ASE_SOURCE
cd $ASE_SOURCE
git clone https://gitlab.com/ase/ase.git trunk
which can be updated using:
cd $ASE_SOURCE/trunk
git pull
We add our installation to the module environment:
cd
mkdir -p modulefiles/ase
cd modulefiles/ase
and edit the module file trunk
that should read:
#%Module1.0
if {![is-loaded intel-para]} {module load intel-para}
if {![is-loaded Python]} {module load Python}
if {![is-loaded SciPy-Stack]} {module load SciPy-Stack}
# customize the following according to your taste
set HOME $env(HOME)
set asehome $HOME/source/ase/trunk
prepend-path PYTHONPATH $asehome
prepend-path PATH $asehome/bin:$asehome/tools
We create a place for gpaw and get the trunk version:
# customize the following according to your taste
GPAW_SOURCE=$HOME/source/gpaw
mkdir -p $GPAW_SOURCE
cd $GPAW_SOURCE
git clone https://gitlab.com/gpaw/gpaw.git trunk
The current trunk version can then be updated by:
cd $GPAW_SOURCE/trunk
git pull
We use the installed version of libxc and our ase/trunk:
module purge
module load intel-para
module load Libxc
module load ase/trunk
and install using
customize_jureca.py
:
cd $GPAW_SOURCE/trunk
mkdir install
cp customize_jureca.py customize.py
python setup.py install --prefix=$PWD/install
We add this also to the module environment:
cd
mkdir -p modulefiles/gpaw
cd modulefiles/gpaw
and the module file trunk
should read:
#%Module1.0
if {![is-loaded ase/trunk]} {module load ase}
if {![is-loaded Libxc]} {module load Libxc}
if {![is-loaded gpaw-setups]} {module load gpaw-setups}
# customize the following according to your taste
set HOME $env(HOME)
set gpawhome $HOME/source/gpaw/trunk/install
prepend-path PATH $gpawhome/bin
prepend-path PYTHONPATH $gpawhome/lib/python3.6/site-packages
setenv GPAW_PYTHON $gpawhome/bin/gpaw-python
Execution
Job scripts can be written using:
gpaw-runscript -h
and the jobs sumitted as:
sbatch run.jureca