Differences between revisions 2 and 11 (spanning 9 versions)
Revision 2 as of 2011-05-02 12:25:48
Size: 839
Comment:
Revision 11 as of 2013-11-11 08:41:50
Size: 1893
Editor: NicoleThomas
Comment:
Deletions are marked like this. Additions are marked like this.
Line 1: Line 1:
#acl ClamsUserGroup:read,write,delete,revert All:read

Line 2: Line 5:
= HowToParallel = <<TableOfContents>>
= ParallelHowTo =

=== Portland Compiler ===
Line 6: Line 12:
On the Ubuntu machines is the PGF compiler suite installed that has MPICH implemented. On the Ubuntu machines the PGF compiler suite is installed that has MPICH implemented.
Line 15: Line 21:
. /opt/pgi/linux86-64/8.0-2/mpi.sh . /opt/pgi/linux86-64/10.4/mpi.sh
Line 21: Line 27:
. /opt/pgi/linux86/8.0-2/mpi.sh . /opt/pgi/linux86/10.4/mpi.sh
Line 33: Line 39:
ssh-add > ssh-agent
> SSH_AUTH_SOCK=/tmp/ssh-arHtY17224/agent.17224; export SSH_AUTH_SOCK;
> SSH_AGENT_PID=17225; export SSH_AGENT_PID;
> echo Agent pid 17225;
> ssh-add .ssh/id_rsa
Line 41: Line 51:
mpirun -np # program mpirun -np # [ --all-local ] program
Line 44: Line 54:
use the option --all-local for running it on the CPUs of the local machine only.
}}}
Line 45: Line 57:

=== Intel Compiler ===

The MPICH2 Library (1.3.2p1) is installed in directory ''/usr/nfs/local/local/mpich2-intel'' (for Intel C and Fortran compilers).

Add the bin subdirectory of the installation directory to your path:
{{{
PATH=/usr/nfs/local/local/mpich2-intel/bin:$PATH
export PATH
Line 46: Line 67:

To read the man pages set MANPATH to the following:
{{{
MANPATH=/usr/nfs/local/local/mpich2-intel/share/man:$MANPATH
export MANPATH
}}}

The programs can be compiled with:
{{{
make useComp=ifc useMPI=true <progname>
}}}

Execute on <n> CPUs:
{{{
mpiexec -np <n> <progname>
}}}

It may be necessary to unset the memory limit:
{{{
ulimit -s unlimited
}}}

ParallelHowTo

Portland Compiler

It is possible to run CLaMS on multi-processor machines using MPI or OpenMP.

On the Ubuntu machines the PGF compiler suite is installed that has MPICH implemented.

In the following a short How to:

First it is necessary to make the path of the MPI libraries public by executing:

for 64bit machines:

. /opt/pgi/linux86-64/10.4/mpi.sh

for 32bit machines:

. /opt/pgi/linux86/10.4/mpi.sh

Then compile the needed programs by executing:

make useMPI=true

Before running the CLaMS script or a single program you have to execute:

> ssh-agent
> SSH_AUTH_SOCK=/tmp/ssh-arHtY17224/agent.17224; export SSH_AUTH_SOCK;
> SSH_AGENT_PID=17225; export SSH_AGENT_PID;
> echo Agent pid 17225;
> ssh-add .ssh/id_rsa

This is necessary, because the processes communicate per ssh.

The programs must be called as following:

mpirun -np # [ --all-local ] program

# - number of processors
use the option --all-local for running it on the CPUs of the local machine only.

Intel Compiler

The MPICH2 Library (1.3.2p1) is installed in directory /usr/nfs/local/local/mpich2-intel (for Intel C and Fortran compilers).

Add the bin subdirectory of the installation directory to your path:

PATH=/usr/nfs/local/local/mpich2-intel/bin:$PATH
export PATH

To read the man pages set MANPATH to the following:

MANPATH=/usr/nfs/local/local/mpich2-intel/share/man:$MANPATH
export MANPATH

The programs can be compiled with:

make useComp=ifc useMPI=true <progname>

Execute on <n> CPUs:

mpiexec -np <n> <progname>

It may be necessary to unset the memory limit:

ulimit -s unlimited