Difference between revisions of "Espresso on CSC"

From ICPWiki
Jump to navigation Jump to search
 
(22 intermediate revisions by 3 users not shown)
Line 2: Line 2:
 
Here you can find a short introduction on how to compile and use ESPResSo on the CSC computer cluster.  
 
Here you can find a short introduction on how to compile and use ESPResSo on the CSC computer cluster.  
 
   
 
   
== Compiling ==
+
== CSC-I (login.csc.uni-frankfurt.de) ==
=== CSC-I (login.csc.uni-frankfurt.de) ===
+
=== Compiling ===
 +
To be done.
 +
=== Running ===
 
To be done.
 
To be done.
  
=== CSC-II (drei.csc.uni-frankfurt.de) ===
+
== CSC-II (drei.csc.uni-frankfurt.de) ==
 +
=== Compiling ===  
 
You have three different options of compiling Espresso on the CSC-II cluster.
 
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:
 
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
 
  $SRCDIR = $HOME/src/Espresso
.
 
  
 
==== Single Processor ====
 
==== Single Processor ====
Line 36: Line 38:
 
                   CPPFLAGS="-I/opt/fftw3/include -I/opt/tcl8.4.9/include" \
 
                   CPPFLAGS="-I/opt/fftw3/include -I/opt/tcl8.4.9/include" \
 
                   LDFLAGS="-L/opt/fftw3/lib -L/opt/tcl8.4.9/lib"
 
                   LDFLAGS="-L/opt/fftw3/lib -L/opt/tcl8.4.9/lib"
 +
 +
 +
 +
Note that if you are compiling old version <2.0 then you might need to copy resulting
 +
Makefile.{ext} where {ext} is the name that configure script assigns. Also,
 +
make sure that correct mpirun is in the path (/opt/mpich/gcc323/bin/) following flags are needed;
 +
 +
./configure --with-mpi=mpich  CC="/opt/mpich/gcc323/bin/mpicc" CPPFLAGS="-I/opt/fftw3/include -I/opt/tcl8.4.9/include -I/opt/mpich/gcc323/include/" LDFLAGS="-L/opt/fftw3/lib -L/opt/tcl8.4.9/lib -L/opt/mpich/gcc323/lib -lmpich -lmpe -lmpe_nompi -lfftw3" -prefix=/your/espresso/bin/path
  
 
==== Multi Processor with Myrinet Communication ====
 
==== Multi Processor with Myrinet Communication ====
Line 47: Line 57:
 
                   LDFLAGS="-L/opt/fftw3/lib -L/opt/tcl8.4.9/lib"
 
                   LDFLAGS="-L/opt/fftw3/lib -L/opt/tcl8.4.9/lib"
  
=== CSC-III (quad.csc.uni-frankfurt.de) ===
+
=== Running ===
To be done.
+
'''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.
  
== Running ==
+
==== Environment Variables ====
'''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.'''
 
=== Environment Variables ===
 
 
Make sure that you include  
 
Make sure that you include  
 
  export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/opt/fftw3/lib:/opt/tcl8.4.9/lib
 
  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.
 
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.1.2
 +
$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/3.1.2 default-ethernet
 +
$SRCDIR/configure
 +
 +
==== Multi Processor with Ethernet Communication (for versions prior to v2.0)====
 +
 +
These steps would be sufficient for your needs (change prefix with an appropriate path)
 +
 +
./configure CC="/usr/local/Cluster-Apps/lam/gcc/64/7.1.1/bin/mpicc" -with-mpi=lam  \
 +
CFLAGS="-I/usr/local/Cluster-Apps/fftw/gcc/64/3.0.1/include" \
 +
LDFLAGS="-L/usr/local/Cluster-Apps/fftw/gcc/64/3.0.1/lib -lfftw3" \
 +
-prefix=/home/suzen/usr/local/bin
 +
make
 +
make install
 +
 +
==== 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/3.1.2 default-myrinet
 +
$SRCDIR/configure
 +
 +
=== 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 variable to your environment in order to make parallel jobs work, i.e.:
 +
 +
export ESPRESSO_SOURCE=$HOME/source/Espresso
 +
export ESPRESSO_SCRIPTS=$ESPRESSO_SOURCE/scripts
 +
 +
==== Sample script for queueing system ====
 +
To be done

Latest revision as of 16:46, 28 June 2007

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"


Note that if you are compiling old version <2.0 then you might need to copy resulting Makefile.{ext} where {ext} is the name that configure script assigns. Also, make sure that correct mpirun is in the path (/opt/mpich/gcc323/bin/) following flags are needed;

./configure --with-mpi=mpich CC="/opt/mpich/gcc323/bin/mpicc" CPPFLAGS="-I/opt/fftw3/include -I/opt/tcl8.4.9/include -I/opt/mpich/gcc323/include/" LDFLAGS="-L/opt/fftw3/lib -L/opt/tcl8.4.9/lib -L/opt/mpich/gcc323/lib -lmpich -lmpe -lmpe_nompi -lfftw3" -prefix=/your/espresso/bin/path

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.1.2
$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/3.1.2 default-ethernet
$SRCDIR/configure

Multi Processor with Ethernet Communication (for versions prior to v2.0)

These steps would be sufficient for your needs (change prefix with an appropriate path)

./configure CC="/usr/local/Cluster-Apps/lam/gcc/64/7.1.1/bin/mpicc" -with-mpi=lam   \
CFLAGS="-I/usr/local/Cluster-Apps/fftw/gcc/64/3.0.1/include" \ 
LDFLAGS="-L/usr/local/Cluster-Apps/fftw/gcc/64/3.0.1/lib -lfftw3" \
-prefix=/home/suzen/usr/local/bin
make 
make install

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/3.1.2 default-myrinet
$SRCDIR/configure

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 variable to your environment in order to make parallel jobs work, i.e.:

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

Sample script for queueing system

To be done