Espresso on CSC

From ICPWiki
Revision as of 11:45, 8 December 2006 by Olenz (talk | contribs) (revert)
Jump to: navigation, search

Espresso on CSC

Here you can find a short introduction on how to compile and use ESPResSo on the CSC computer cluster.

CSC-I (login.csc.uni-frankfurt.de)

Compiling

To be done.

Running

To be done.

CSC-II (drei.csc.uni-frankfurt.de)

Compiling

You have three different options of compiling Espresso on the CSC-II cluster.

All three options assume that you want to use the recent way of configuring using object directories and have the Espresso sources in the following folder:

$SRCDIR = $HOME/src/Espresso

Single Processor

1. Create an object directory

mkdir ~/bin/Espresso/myobj-single
cd ~/bin/Espresso/myobj-single

2. Create and edit the configuation file 'myconfig.h'

cp $SRCDIR/myconfig-sample.h ./myconfig.h
vi myconfig.h

3. Execute configure

$SRCDIR/configure --without-mpi \
                  CPPFLAGS="-I/opt/fftw3/include -I/opt/tcl8.4.9/include" \
                  LDFLAGS="-L/opt/fftw3/lib -L/opt/tcl8.4.9/lib"

4. Build Espresso

make -j

Multi Processor with Ethernet Communication

As above but exchange step 3 by the following:

3. Execute configure

export PATH=/opt/mpich/gcc323/bin/:$PATH
$SRCDIR/configure --with-mpi=mpich \
                  CC="/opt/mpich/gcc323/bin/mpicc" \
                  CPPFLAGS="-I/opt/fftw3/include -I/opt/tcl8.4.9/include" \
                  LDFLAGS="-L/opt/fftw3/lib -L/opt/tcl8.4.9/lib"

Multi Processor with Myrinet Communication

As above but exchange step 3 with the following:

3. Execute configure

export PATH=/opt/mpich_gm/gcc323/bin/:$PATH
$SRCDIR/configure --with-mpi=mpich \
                  CC="/opt/mpich_gm/gcc323/bin/mpicc" \
                  CPPFLAGS="-I/opt/fftw3/include -I/opt/tcl8.4.9/include" \
                  LDFLAGS="-L/opt/fftw3/lib -L/opt/tcl8.4.9/lib"

Running

All jobs (even single processor jobs) have to be submitted to the queueing system. Do not run time consuming applications (i.e. any kind of simulation) on the head node. The myrinet partion is only available for jobs that request more than 2 CPUs.

Environment Variables

Make sure that you include

export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/opt/fftw3/lib:/opt/tcl8.4.9/lib

in your profile (i.e. ~/.bashrc) in order to find the libraries during runtime.

Sample script for queueing system

To be done

CSC-III (quad.csc.uni-frankfurt.de)

Compiling

You have three different options of compiling Espresso on the CSC-III cluster.

All three options assume that you want to use the recent way of configuring using object directories and have the Espresso sources in the following folder:

$SRCDIR = $HOME/src/Espresso

Single Processor

1. Create an object directory

mkdir ~/bin/Espresso/myobj-single
cd ~/bin/Espresso/myobj-single

2. Create and edit the configuation file 'myconfig.h'

cp $SRCDIR/myconfig-sample.h ./myconfig.h
vi myconfig.h

3. Load needed modules & execute configure

module add fftw/gcc/64/3.0.1
$SRCDIR/configure --without-mpi

4. Build Espresso

make -j

Multi Processor with Ethernet Communication

As above but exchange step 3 by the following:

3. Load needed modules & execute configure

module add fftw/gcc/64 mpich/ge/gcc/64
$SRCDIR/configure  --with-mpi=mpich \ 
   CC="/usr/local/Cluster-Apps/mpich/ge/gcc/64/1.2.7/bin/mpicc \
   CPPFLAGS="$CPPFLAGS -I/usr/local/Cluster-Apps/mpich/ge/gcc/64/1.2.7/include" \
   LDFLAGS="$LDFLAGS -L/usr/local/Cluster-Apps/mpich/ge/gcc/64/1.2.7/lib"

Multi Processor with Myrinet Communication

As above but exchange step 3 with the following:

3. Load needed modules & execute configure

module add fftw/gcc/64 mpich/mx/gcc/64 mx/64
$SRCDIR/configure --with-mpi=mpich \
  CC="/usr/local/Cluster-Apps/mpich/mx/gcc/64/1.2.6..0.94/bin/mpicc" \
  CPPFLAGS="$CPPFLAGS -I/usr/local/Cluster-Apps/mpich/mx/gcc/64/1.2.6..0.94/include -I/usr/local/Cluster-Apps/mx/mx-1.1.1/include" \ 
  LDFLAGS="$LDFLAGS -L/usr/local/Cluster-Apps/mpich/mx/gcc/64/1.2.6..0.94/lib -L/usr/local/Cluster-Apps/mx/mx-1.1.1/lib" \
  LIBS="-lmyriexpress"

Running

All jobs (even single processor jobs) have to be submitted to the queueing system. Do not run time consuming applications (i.e. any kind of simulation) on the head node. The myrinet partion is only available for jobs that request more than 4 CPUs.

Environment Variables

You have to add the $ESPRESSO_SCRIPT varibale to your environment in order to make parallel jobs work, i.e.:

export ESPRESSO_SOURCE=$HOME/source/Espresso
export ESPRESSO_SCRIPTS=$ESPRESSO_SOURCE/scripts

Furthermore, it advisable to include the following line, which lets you use the complete functionality of the queueing system.

module add torque maui

Sample script for queueing system

To be done