Differences between revisions 13 and 21 (spanning 8 versions)
Revision 13 as of 2014-08-29 07:18:38
Size: 2668
Editor: NicoleThomas
Comment:
Revision 21 as of 2024-08-12 08:52:11
Size: 0
Editor: NicoleThomas
Comment: outdated
Deletions are marked like this. Additions are marked like this.
Line 1: Line 1:
#acl ClamsUserGroup:read,write,delete,revert All:read


## page was renamed from HowToParallel
== ParallelHowTo ==

<<TableOfContents>>

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

=== Intel Compiler 11.1 ===

 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
}}}

=== Portland Compiler 10.4 ===

 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:
 {{{
. /opt/pgi/linux86-64/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 14.0.3 ===

 The MPICH Library 3.1.2 is installed in directory ''/usr/nfs/local/local/mpich-3.1.2-ifort-14.0.3''.
 Add the bin subdirectory of the installation directory of MPICH library to your path:
 {{{
PATH=/usr/nfs/local/local/mpich-3.1.2-ifort-14.0.3/bin:$PATH
export PATH
}}}

 Clams programs can be compiled with:
 {{{
make useMPI=true [useComp=ifc] progname
}}}

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

=== Portland Compiler 14.6 ===

 It is necessary to make the path of the MPI libraries (included in the portland compiler suite) public by executing:
 {{{
. /opt/pgi/linux86-64/14.6/mpi.sh
}}}

 Clams programs can be compiled with:
 {{{
make useMPI=true [useComp=pgi] progname
}}}

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