| 974 |
of controlling and coordinating the start up of a large number |
of controlling and coordinating the start up of a large number |
| 975 |
(hundreds and possibly even thousands) of copies of the same |
(hundreds and possibly even thousands) of copies of the same |
| 976 |
program, MPI is used. The calls to the MPI multi-process startup |
program, MPI is used. The calls to the MPI multi-process startup |
| 977 |
routines must be activated at compile time. This is done |
routines must be activated at compile time. Currently MPI libraries are |
| 978 |
by setting the {\em ALLOW\_USE\_MPI} and {\em ALWAYS\_USE\_MPI} |
invoked by |
| 979 |
flags in the {\em CPP\_EEOPTIONS.h} file.\\ |
specifying the appropriate options file with the |
| 980 |
|
\begin{verbatim}-of\end{verbatim} flag when running the {\em genmake2} |
| 981 |
|
script, which generates the Makefile for compiling and linking MITgcm. |
| 982 |
|
(Previously this was done by setting the {\em ALLOW\_USE\_MPI} and |
| 983 |
|
{\em ALWAYS\_USE\_MPI} flags in the {\em CPP\_EEOPTIONS.h} file.) More |
| 984 |
|
detailed information about the use of {\em genmake2} for specifying |
| 985 |
|
local compiler flags is located in section 3 ??\\ |
| 986 |
|
|
|
\fbox{ |
|
|
\begin{minipage}{4.75in} |
|
|
File: {\em eesupp/inc/CPP\_EEOPTIONS.h}\\ |
|
|
CPP: {\em ALLOW\_USE\_MPI}\\ |
|
|
CPP: {\em ALWAYS\_USE\_MPI}\\ |
|
|
Parameter: {\em nPx}\\ |
|
|
Parameter: {\em nPy} |
|
|
\end{minipage} |
|
|
} \\ |
|
|
|
|
|
Additionally, compile time options are required to link in the |
|
|
MPI libraries and header files. Examples of these options |
|
|
can be found in the {\em genmake2} script that creates makefiles |
|
|
for compilation. When this script is executed with the {bf -mpi} |
|
|
flag it will generate a makefile that includes |
|
|
paths for search for MPI head files and for linking in |
|
|
MPI libraries. For example the {\bf -mpi} flag on a |
|
|
Silicon Graphics IRIX system causes a |
|
|
Makefile with the compilation command |
|
|
Graphics IRIX system \begin{verbatim} |
|
|
mpif77 -I/usr/local/mpi/include -DALLOW_USE_MPI -DALWAYS_USE_MPI |
|
|
\end{verbatim} |
|
|
to be generated. |
|
|
This is the correct set of options for using the MPICH open-source |
|
|
version of MPI, when it has been installed under the subdirectory |
|
|
/usr/local/mpi. |
|
|
However, on many systems there may be several |
|
|
versions of MPI installed. For example many systems have both |
|
|
the open source MPICH set of libraries and a vendor specific native form |
|
|
of the MPI libraries. The correct setup to use will depend on the |
|
|
local configuration of your system.\\ |
|
| 987 |
|
|
| 988 |
\fbox{ |
\fbox{ |
| 989 |
\begin{minipage}{4.75in} |
\begin{minipage}{4.75in} |