cori.nersc.gov (XC40)

Note

These instructions are up-to-date as of January 2017.

GPAW

At NERSC it is recommened to install GPAW on Cori with Anaconda python. For massivly parallel applications it is recommened to use Shifter.

GPAW can be built with a minimal customize.py

compiler = 'cc'
mpicompiler = 'cc'
mpilinker = 'cc'
scalapack=True
hdf5=True
libxc='/usr/common/software/libxc/2.1.3'
include_dirs += [libxc+'/include']
extra_link_args += [libxc+'/lib/libxc.a']
extra_compile_args += ['-O2']
if 'xc' in libraries:
    libraries.remove('xc')
# these are in the cray wrapper
if 'blas' in libraries:
    libraries.remove('blas')
if 'lapack' in libraries:
    libraries.remove('lapack')

if scalapack:
    define_macros += [('GPAW_NO_UNDERSCORE_CBLACS', '1')]
    define_macros += [('GPAW_NO_UNDERSCORE_CSCALAPACK', '1')]

Load the GNU programming environment and set Cray environment for dynamic linking:

export CRAYPE_LINK_TYPE=dynamic
module rm PrgEnv-intel
module load PrgEnv-gnu
module load cray-hdf5-parallel
module load python/2.7-anaconda

Install ASE with pip while the Anaconda python module is loaded:

pip install ase --user

Build and install GPAW:

python setup.py build_ext
python setup.py install --user

To setup the environment:

export PATH=$HOME/.local/cori/2.7-anaconda/bin:$PATH
export OMP_NUM_THREADS=1
export PYTHONHOME=/global/common/cori/software/python/2.7-anaconda

Then the test suite can be run from a batch script or interactive session with:

srun -n 8 -c 2 --cpu_bind=cores gpaw-python `which gpaw` test