Friday, February 6, 2015

MPI4Py

"This package provides Python bindings for the Message Passing Interface (MPI) standard. It is implemented on top of the MPI-1/2/3 specification and exposes an API which grounds on the standard MPI-2 C++ bindings."

Cray

Switch to the GNU environment

$ module switch PrgEnv-cray PrgEnv-gnu

Compile and install MPI4Py

$ cd $WORK/setup
$ wget https://bitbucket.org/mpi4py/mpi4py/downloads/mpi4py-1.3.1.tar.gz -O mpi4py-1.3.1.tar.gz
$ tar zxf mpi4py-1.3.1.tar.gz
$ cd mpi4py-1.3.1
$ cat >> mpi.cfg <<EOF
[cray]
mpicc = cc
mpicxx = CC
extra_link_args = -shared
EOF
$ python setup.py build --mpi=cray
$ python setup.py install


Make an interactive job for testing.

$ qsub -I -N MPI4Py -q TINY -l select=2:ncpus=24

Wait a minute to get into the parallel environment.

$ module switch PrgEnv-cray PrgEnv-gnu
$ cd $WORK/setup/mpi4py-1.3.1
$ aprun -n 8 -N 4 python demo/helloworld.py


Have fun!

Tuesday, January 27, 2015

Quantum Espresso 5.x

“The QUANTUM ESPRESSO distribution contains the core packages PWscf (Plane-Wave Self-Consistent Field) and CP (Car-Parrinello) for the calculation of electronic-structure properties within Density-Functional Theory (DFT), using a Plane-Wave (PW) basis set and pseudopotentials.”

The main point in this post is to use Intel Compiler to take the advantage of itself as well as MKL.

For Cray XC30

% module switch PrgEnv-cray PrgEnv-intel

% cd $WORK/setup
% wget http://qe-forge.org/gf/download/frsrelease/173/655/espresso-5.1.1.tar.gz
% tar zxvf espresso-5.1.1.tar.gz
% cd espresso-5.1.1


% ./configure --prefix=$WORK/apps/espresso/5.1.1-intel --enable-parallel --with-scalapack=yes ARCH=crayxt
% make -j 8 pw
% make pw install


Updates
  • 2015/02/07: I have just found a new page on JAIST MPC site which contains somewhat "official" way to install Quantum Espresso on Cray XC30 with GNU compilers and Cray's BLAS/SCALAPACK. However, I have no time to verify it now. If you can try it, please leave a comment here on any problem.