This commit is contained in:
Bassem Girgis
2019-08-11 01:14:02 -05:00
parent 256b7cacd7
commit 2c9e6b5ede
1458 changed files with 129662 additions and 0 deletions

View File

@@ -0,0 +1,10 @@
.TH hydra_nameserver 1 "6/5/2019" " " "HYDRA"
.SH NAME
hydra_nameserver \- Internal executable used by Hydra
.SH DESCRIPTION
This executable is designed to not be run directly by users, but to
support the Hydra process manager. As such, no documentation will be
provided here.
.SH LOCATION
/tmp/kS7n0Mi0xa/mpich-3.3.1/src/pm/hydra/tools/nameserver/hydra_nameserver.txt

View File

@@ -0,0 +1,10 @@
.TH hydra_persist 1 "6/5/2019" " " "HYDRA"
.SH NAME
hydra_persist \- Internal executable used by Hydra
.SH DESCRIPTION
This executable is designed to not be run directly by users, but to
support the Hydra process manager. As such, no documentation will be
provided here.
.SH LOCATION
/tmp/kS7n0Mi0xa/mpich-3.3.1/src/pm/hydra/tools/bootstrap/persist/hydra_persist.txt

View File

@@ -0,0 +1,10 @@
.TH hydra_pmi_proxy 1 "6/5/2019" " " "HYDRA"
.SH NAME
hydra_pmi_proxy \- Internal exectuable used by Hydra
.SH DESCRIPTION
This executable is designed to not be run directly by users, but to
support the Hydra process manager. As such, no documentation will be
provided here.
.SH LOCATION
/tmp/kS7n0Mi0xa/mpich-3.3.1/src/pm/hydra/pm/pmiserv/hydra_pmi_proxy.txt

View File

@@ -0,0 +1,217 @@
.TH mpicc 1 "6/5/2019" " " "MPI"
.SH NAME
mpicc \- Compiles and links MPI programs written in C
.SH DESCRIPTION
This command can be used to compile and link MPI programs written in
C. It provides the options and any special libraries that are
needed to compile and link MPI programs.
It is important to use this command, particularly when linking programs,
as it provides the necessary libraries.
.SH COMMAND LINE ARGUMENTS
.PD 0
.TP
.B -show
- Show the commands that would be used without
running them
.PD 1
.PD 0
.TP
.B -help
- Give short help
.PD 1
.PD 0
.TP
.B -cc=name
- Use compiler
.I name
instead of the default choice. Use
this only if the compiler is compatible with the MPICH
library (see below)
.PD 1
.PD 0
.TP
.B -config=name
- Load a configuration file for a particular compiler.
This allows a single
.I mpicc
command to be used with
multiple compilers.
.PD 1
.PD 0
.TP
.B -compile_info
- Show the steps for compiling a program. This option
can be used to see what options and include paths are
used by mpicc.
.PD 1
.PD 0
.TP
.B -link_info
- Show the steps for linking a program. This option
can be used to see what options and libraries are used by
mpicc.
.PD 1
.PD 0
.TP
.B -profile=name
- Use the MPI profiling given by name. See below for
details
.PD 1
.PD 0
.TP
.B -echo
- Show exactly what this program is doing.
This option should normally not be used.
.PD 1
.PD 0
.TP
.B -static
- mpi - Use a statically compile MPI library, but shared libraries
for all of the other dependencies.
.PD 1
.PD 0
.TP
.B others
- are passed to the compiler or linker. For example,
.I \\-c
causes files to be compiled,
.I \\-g
selects compilation with
debugging on most systems, and
.I \\-o name
causes linking
with the output executable given the name
.I name
\&.
.PD 1
.SH ENVIRONMENT VARIABLES
The environment variable
.I MPICH_CC
may be used
to select different C compiler and linker. Note that since
MPICH is built with a particular C and Fortran compiler, changing the
compilers used can cause problems. Use this only if you could intermix
code compiled with the different compilers.
The environment variable
.I MPICC_PROFILE
specifies a profile library
and has the same effect as if
.I \\-profile=$MPICC_PROFILE
were used as
an argument to
.I mpicc
\&.
See the discussion of
.I \\-profile
below for more
details.
.SH COMPATIBLE COMPILERS
The MPI library may be used with any compiler that uses the same
lengths for basic data objects (such as
.I long double
) and that
uses compatible run-time libraries. On many systems, the various
compilers are compatible and may be used interchangably. There are
exceptions; if you use the
.I MPICH_CC
environment variable or the
.I \\-cc=name
command-line argument to override the choice of compiler
and encounter problems, try reconfiguring MPICH with the new compiler
and installing MPICH in a separate location. See the installation manual
for more details.
.SH EXAMPLES
To compile a single file
.I foo.c
, use
.nf
mpicc -c foo.c
.fi
To link the output and make an executable, use
.nf
mpicc -o foo foo.o
.fi
Combining compilation and linking in a single command
.nf
mpicc -o foo foo.c
.fi
is a convenient way to build simple programs.
.SH SELECTING A PROFILING LIBRARY
The
.I \\-profile=name
argument allows you to specify an MPI profiling
library to be used.
.I name
can have two forms:
.br
A library in the same directory as the MPI library
.br
The name of a profile configuration file
.br
If
.I name
is a library, then this library is included before the MPI
library. This allows the simple use of libraries that make use of the
MPI profiling interface and that are installed in the same directory as
the MPI library.
If
.I name.conf
is the name of a file in the sysconfdir directory, then this
is read and may define the following variables:
.PD 0
.TP
.B PROFILE_PRELIB
- Libraries (and paths) to include before the MPI library
.PD 1
.PD 0
.TP
.B PROFILE_POSTLIB
- Libraries to include after the MPI library
.PD 1
.PD 0
.TP
.B PROFILE_INCPATHS
- C preprocessor arguments for any include files
For example, to add
.I /usr/local/myprof/include
to the include path and
the library
.I libmyprof.a
in
.I /usr/local/myprof/lib
to the link step,
you could create the file
.I myprof.conf
with the lines
.PD 1
.nf
PROFILE_PRELIB="-L/usr/local/myprof/lib -lmyprof"
PROFILE_INCPATHS="-I/usr/local/myprof/include"
.fi
and place it in the sysconfdir directory (this directory is set at
configure time when MPICH is built). Then using the command-line
argument
.I \\-profile=myprof
will cause these
definitions to be added to the relevant compile commands.
.SH SEE ALSO
mpicxx, mpifort, mpiexec
.br

View File

@@ -0,0 +1,217 @@
.TH mpicxx 1 "6/5/2019" " " "MPI"
.SH NAME
mpicxx \- Compiles and links MPI programs written in C++
.SH DESCRIPTION
This command can be used to compile and link MPI programs written in
C++. It provides the options and any special libraries that are
needed to compile and link MPI programs.
It is important to use this command, particularly when linking programs,
as it provides the necessary libraries.
.SH COMMAND LINE ARGUMENTS
.PD 0
.TP
.B -show
- Show the commands that would be used without
running them
.PD 1
.PD 0
.TP
.B -help
- Give short help
.PD 1
.PD 0
.TP
.B -cxx=name
- Use compiler
.I name
instead of the default choice. Use
this only if the compiler is compatible with the MPICH
library (see below)
.PD 1
.PD 0
.TP
.B -config=name
- Load a configuration file for a particular compiler.
This allows a single
.I mpicxx
command to be used with
multiple compilers.
.PD 1
.PD 0
.TP
.B -compile_info
- Show the steps for compiling a program. This option
can be used to see what options and include paths are
used by mpicxx.
.PD 1
.PD 0
.TP
.B -link_info
- Show the steps for linking a program. This option
can be used to see what options and libraries are used by
mpicxx.
.PD 1
.PD 0
.TP
.B -profile=name
- Use the MPI profiling given by name. See below for
details
.PD 1
.PD 0
.TP
.B -echo
- Show exactly what this program is doing.
This option should normally not be used.
.PD 1
.PD 0
.TP
.B -static
- mpi - Use a statically compile MPI library, but shared libraries
for all of the other dependencies.
.PD 1
.PD 0
.TP
.B others
- are passed to the compiler or linker. For example,
.I \\-c
causes files to be compiled,
.I \\-g
selects compilation with
debugging on most systems, and
.I \\-o name
causes linking
with the output executable given the name
.I name
\&.
.PD 1
.SH ENVIRONMENT VARIABLES
The environment variables
.I MPICH_CXX
may be used
to select different C++ compiler and linker. Note that since
MPICH is built with a particular C and Fortran compiler, changing the
compilers used can cause problems. Use this only if you could intermix
code compiled with the different compilers.
The environment variable
.I MPICC_PROFILE
specifies a profile library
and has the same effect as if
.I \\-profile=$MPICC_PROFILE
were used as
an argument to
.I mpicc
\&.
See the discussion of
.I \\-profile
below for more
details.
.SH COMPATIBLE COMPILERS
The MPI library may be used with any compiler that uses the same
lengths for basic data objects (such as
.I long double
) and that
uses compatible run-time libraries. On many systems, the various
compilers are compatible and may be used interchangably. There are
exceptions; if you use the
.I MPICH_CXX
environment variable or the
.I \\-cxx=name
command-line argument to override the choice of compiler
and encounter problems, try reconfiguring MPICH with the new compiler,
and installing MPICH in a separate location. See the installation manual
for more details.
.SH EXAMPLES
To compile a single file
.I foo.c
, use
.nf
mpicxx -c foo.cxx
.fi
To link the output and make an executable, use
.nf
mpicxx -o foo foo.o
.fi
Combining compilation and linking in a single command
.nf
mpicxx -o foo foo.cxx
.fi
is a convenient way to build simple programs.
.SH SELECTING A PROFILING LIBRARY
The
.I \\-profile=name
argument allows you to specify an MPI profiling
library to be used.
.I name
can have two forms:
.br
A library in the same directory as the MPI library
.br
The name of a profile configuration file
.br
If
.I name
is a library, then this library is included before the MPI
library. This allows the simple use of libraries that make use of the
MPI profiling interface and that are installed in the same directory as
the MPI library.
If
.I name.conf
is the name of a file in the sysconfdir directory, then this
is read and may define the following variables:
.PD 0
.TP
.B PROFILE_PRELIB
- Libraries (and paths) to include before the MPI library
.PD 1
.PD 0
.TP
.B PROFILE_POSTLIB
- Libraries to include after the MPI library
.PD 1
.PD 0
.TP
.B PROFILE_INCPATHS
- C preprocessor arguments for any include files
For example, to add
.I /usr/local/myprof/include
to the include path and
the library
.I libmyprof.a
in
.I /usr/local/myprof/lib
to the link step,
you could create the file
.I myprof.conf
with the lines
.PD 1
.nf
PROFILE_PRELIB="-L/usr/local/myprof/lib -lmyprof"
PROFILE_INCPATHS="-I/usr/local/myprof/include"
.fi
and place it in the sysconfdir directory (this directory is set at
configure time when MPICH is built). Then using the command-line
argument
.I \\-profile=myprof
will cause these
definitions to be added to the relevant compile commands.
.SH SEE ALSO
mpicc, mpifort, mpiexec
.br

View File

@@ -0,0 +1,321 @@
.TH mpiexec 1 "6/5/2019" " " "MPI"
.SH NAME
mpiexec \- Run an MPI program
.SH SYNOPSIS
.nf
.fi
.nf
mpiexec args executable pgmargs [ : args executable pgmargs ... ]
.fi
where
.I args
are command line arguments for
.I mpiexec
(see below),
.I executable
is the name of an executable MPI program, and
.I pgmargs
are command line arguments for the executable. Multiple executables
can be specified by using the colon notation (for MPMD - Multiple Program
Multiple Data applications). For example, the following command will run
the MPI program
.I a.out
on 4 processes:
.nf
mpiexec -n 4 a.out
.fi
The MPI standard specifies the following arguments and their meanings:
.PD 0
.TP
.B -n <np>
- Specify the number of processes to use
.PD 1
.PD 0
.TP
.B -host <hostname>
- Name of host on which to run processes
.PD 1
.PD 0
.TP
.B -arch <architecture name>
- Pick hosts with this architecture type
.PD 1
.PD 0
.TP
.B -wdir <working directory>
- cd to this one
.B before
running executable
.PD 1
.PD 0
.TP
.B -path <pathlist>
- use this to find the executable
.PD 1
.PD 0
.TP
.B -soft <triplets>
- comma separated triplets that specify requested numbers
of processes (see the MPI-2 specification for more details)
.PD 1
.PD 0
.TP
.B -file <name>
- implementation-defined specification file
.PD 1
.PD 0
.TP
.B -configfile <name>
- file containing specifications of host/program,
one per line, with # as a comment indicator, e.g., the usual
mpiexec input, but with ":" replaced with a newline. That is,
the configfile contains lines with -soft, -n etc.
.PD 1
Additional arguments that are specific to the MPICH implementation
are discussed below.
Note that not all of these parameters are meaningful for all
systems. For example, the
.I gforker
version of
.I mpiexec
creates all
processes on the same system on which it is running; in that case, the
.I \\-arch
and
.I \\-host
options are ignored.
The colon character (
.I :
) may be used to separate different executables
for MPMD (multiple program multiple data) programming. For example,
to run the program
.I ocean
on 4 processes and
.I air
on 8 processes, use:
.nf
mpiexec -n 4 ocean : -n 8 air
.fi
.SH MPICH-SPECIFIC ARGUMENTS
Many of the implementations of process managers in MPICH support the
following arguments to
.I mpiexec
:
.PD 0
.TP
.B -np <num>
- A synonym for the standard
.I \\-n
argument
.PD 1
.PD 0
.TP
.B -env <name> <value>
- Set the environment variable
.I <name>
to
.I <value>
for
the processes being run by
.I mpiexec
.PD 1
.PD 0
.TP
.B -envnone
- Pass no environment variables (other than ones specified with
other
.I \\-env
or
.I \\-genv
arguments) to the processes being run by
.I mpiexec
\&.
By default, all environment
variables are provided to each MPI process (rationale: principle of
least surprise for the user)
.PD 1
.PD 0
.TP
.B -envlist <list>
- Pass the listed environment variables (names separated
by commas), with their current values, to the processes being run by
.I mpiexec
\&.
.PD 1
.PD 0
.TP
.B -genv <name> <value>
- The
.I \\-genv
options have the same meaning as their
corresponding
.I \\-env
version, except they apply to all executables, not just
the current executable (in the case that the colon syntax is used to specify
multiple execuables).
.PD 1
.PD 0
.TP
.B -genvnone
- Like
.I \\-envnone
, but for all executables
.PD 1
.PD 0
.TP
.B -genvlist <list>
- Like
.I \\-envlist
, but for all executables
.PD 1
.PD 0
.TP
.B -usize <n>
- Specify the value returned for the value of the attribute
.I MPI_UNIVERSE_SIZE
\&.
.PD 1
.PD 0
.TP
.B -l
- Label standard out and standard error (
.I stdout
and
.I stderr
) with
the rank of the process
.PD 1
.PD 0
.TP
.B -maxtime <n>
- Set a timelimit of
.I <n>
seconds.
.PD 1
.PD 0
.TP
.B -exitinfo
- Provide more information on the reason each process exited if
there is an abnormal exit
.PD 1
.SH ENVIRONMENT VARIABLES FOR MPIEXEC
The following environment variables are understood by some versions of
.I mpiexec
\&.
The command line arguments have priority over these; that is,
if both the environment variable and command line argument are used, the
value specified by the command line argument is used.
.PD 0
.TP
.B MPIEXEC_TIMEOUT
- Maximum running time in seconds.
.I mpiexec
will
terminate MPI programs that take longer than the value specified by
.I MPIEXEC_TIMEOUT
\&.
.PD 1
.PD 0
.TP
.B MPIEXEC_UNIVERSE_SIZE
- Set the universe size
.PD 1
.PD 0
.TP
.B MPIEXEC_PORT_RANGE
- Set the range of ports that
.I mpiexec
will use
in communicating with the processes that it starts. The format of
this is
.I <low>:<high>
\&.
For example, to specify any port between
10000 and 10100, use
.I 10000:10100
\&.
.PD 1
.PD 0
.TP
.B MPICH_PORT_RANGE
- Has the same meaning as
.I MPIEXEC_PORT_RANGE
and
is used if
.I MPIEXEC_PORT_RANGE
is not set.
.PD 1
.PD 0
.TP
.B MPIEXEC_PREFIX_DEFAULT
- If this environment variable is set, output
to standard output is prefixed by the rank in
.I MPI_COMM_WORLD
of the
process and output to standard error is prefixed by the rank and the
text
.I (err)
; both are followed by an angle bracket (
.I >
). If
this variable is not set, there is no prefix.
.PD 1
.PD 0
.TP
.B MPIEXEC_PREFIX_STDOUT
- Set the prefix used for lines sent to standard
output. A
.I %d
is replaced with the rank in
.I MPI_COMM_WORLD
; a
.I %w
is
replaced with an indication of which
.I MPI_COMM_WORLD
in MPI jobs that
involve multiple
.I MPI_COMM_WORLD
s (e.g., ones that use
.I MPI_Comm_spawn
or
.I MPI_Comm_connect
).
.PD 1
.PD 0
.TP
.B MPIEXEC_PREFIX_STDERR
- Like
.I MPIEXEC_PREFIX_STDOUT
, but for standard error.
.PD 1
.SH RETURN STATUS
.I mpiexec
returns the maximum of the exit status values of all of the
processes created by
.I mpiexec
\&.

View File

@@ -0,0 +1,203 @@
.TH mpif77 1 "6/5/2019" " " "MPI"
.SH NAME
mpif77 \- Compiles and links MPI programs written in Fortran 77
.SH DESCRIPTION
This command can be used to compile and link MPI programs written in
Fortran. It provides the options and any special libraries that are
needed to compile and link MPI programs.
It is important to use this command, particularly when linking programs,
as it provides the necessary libraries.
.SH COMMAND LINE ARGUMENTS
.PD 0
.TP
.B -show
- Show the commands that would be used without
running them
.PD 1
.PD 0
.TP
.B -help
- Give short help
.PD 1
.PD 0
.TP
.B -f77=name
- Use compiler
.I name
instead of the default choice. Use
this only if the compiler is compatible with the MPICH
library (see below)
.PD 1
.PD 0
.TP
.B -config=name
- Load a configuration file for a particular compiler.
This allows a single
.I mpif77
command to be used with
multiple compilers.
.PD 1
.PD 0
.TP
.B -compile_info
- Show the steps for compiling a program. This option
can be used to see what options and include paths are
used by mpif77.
.PD 1
.PD 0
.TP
.B -link_info
- Show the steps for linking a program. This option
can be used to see what options and libraries are used by
mpif77.
.PD 1
.PD 0
.TP
.B -profile=name
- Use the MPI profiling given by name. See below for
details
.PD 1
.PD 0
.TP
.B -echo
- Show exactly what this program is doing.
This option should normally not be used.
.PD 1
.PD 0
.TP
.B -static
- mpi - Use a statically compile MPI library, but shared libraries
for all of the other dependencies.
.PD 1
.PD 0
.TP
.B others
- are passed to the compiler or linker. For example,
.I \\-c
causes files to be compiled,
.I \\-g
selects compilation with
debugging on most systems, and
.I \\-o name
causes linking
with the output executable given the name
.I name
\&.
.PD 1
.SH ENVIRONMENT VARIABLES
The environment variables
.I MPICH_F77
may be used
to select different Fortran compiler and linker. Note that since
MPICH is built with a particular C and Fortran compiler, change the
compilers used can cause problems. Use this only if you could intermix
code compiled with the different compilers.
.SH COMPATIBLE COMPILERS
The MPI library may be used with any compiler that uses the same
lengths for basic data objects (such as
.I long double
) and that
uses compatible run-time libraries. On many systems, the various
compilers are compatible and may be used interchangably. There are
exceptions; if you use the
.I MPICH_F77
environment variable or the
.I \\-f77=name
command-line argument to override the choice of compiler
and encounter problems, try reconfiguring MPICH with the new compiler
and installing MPICH in a separate location. See the installation manual
for more details.
.SH EXAMPLES
To compile a single file
.I foo.f
, use
.nf
mpif77 -c foo.f
.fi
To link the output and make an executable, use
.nf
mpif77 -o foo foo.o
.fi
Combining compilation and linking in a single command
.nf
mpif77 -o foo foo.f
.fi
is a convenient way to build simple programs.
.SH SELECTING A PROFILING LIBRARY
The
.I \\-profile=name
argument allows you to specify an MPI profiling
library to be used.
.I name
can have two forms:
.br
A library in the same directory as the MPI library
.br
The name of a profile configuration file
.br
If
.I name
is a library, then this library is included before the MPI
library. This allows the simple use of libraries that make use of the
MPI profiling interface and that are installed in the same directory as
the MPI library.
If
.I name.conf
is the name of a file in the sysconfdir directory, then this
is read and may define the following variables:
.PD 0
.TP
.B PROFILE_PRELIB
- Libraries (and paths) to include before the MPI library
.PD 1
.PD 0
.TP
.B PROFILE_POSTLIB
- Libraries to include after the MPI library
.PD 1
.PD 0
.TP
.B PROFILE_INCPATHS
- C preprocessor arguments for any include files
For example, to add
.I /usr/local/myprof/include
to the include path and
the library
.I libmyprof.a
in
.I /usr/local/myprof/lib
to the link step,
you could create the file
.I myprof.conf
with the lines
.PD 1
.nf
PROFILE_PRELIB="-L/usr/local/myprof/lib -lmyprof"
PROFILE_INCPATHS="-I/usr/local/myprof/include"
.fi
and place it in the sysconfdir directory (this directory is set at
configure time when MPICH is built). Then using the command-line
argument
.I \\-profile=myprof
will cause these
definitions to be added to the relevant compile commands.
.SH SEE ALSO
mpicc, mpicxx, mpifort, mpiexec
.br

View File

@@ -0,0 +1,203 @@
.TH mpifort 1 "6/5/2019" " " "MPI"
.SH NAME
mpifort \- Compiles and links MPI programs written in Fortran 90
.SH DESCRIPTION
This command can be used to compile and link MPI programs written in
Fortran. It provides the options and any special libraries that are
needed to compile and link MPI programs.
It is important to use this command, particularly when linking programs,
as it provides the necessary libraries.
.SH COMMAND LINE ARGUMENTS
.PD 0
.TP
.B -show
- Show the commands that would be used without
running them
.PD 1
.PD 0
.TP
.B -help
- Give short help
.PD 1
.PD 0
.TP
.B -fc=name
- Use compiler
.I name
instead of the default choice. Use
this only if the compiler is compatible with the MPICH
library (see below)
.PD 1
.PD 0
.TP
.B -config=name
- Load a configuration file for a particular compiler.
This allows a single
.I mpifort
command to be used with
multiple compilers.
.PD 1
.PD 0
.TP
.B -compile_info
- Show the steps for compiling a program. This option
can be used to see what options and include paths are
used by mpifort.
.PD 1
.PD 0
.TP
.B -link_info
- Show the steps for linking a program. This option
can be used to see what options and libraries are used by
mpifort.
.PD 1
.PD 0
.TP
.B -profile=name
- Use the MPI profiling given by name. See below for
details
.PD 1
.PD 0
.TP
.B -echo
- Show exactly what this program is doing.
This option should normally not be used.
.PD 1
.PD 0
.TP
.B -static
- mpi - Use a statically compile MPI library, but shared libraries
for all of the other dependencies.
.PD 1
.PD 0
.TP
.B others
- are passed to the compiler or linker. For example,
.I \\-c
causes files to be compiled,
.I \\-g
selects compilation with
debugging on most systems, and
.I \\-o name
causes linking
with the output executable given the name
.I name
\&.
.PD 1
.SH ENVIRONMENT VARIABLES
The environment variables
.I MPICH_FC
may be used
to select different Fortran compiler and linker. Note that since
MPICH is built with a particular C and Fortran compiler, change the
compilers used can cause problems. Use this only if you could intermix
code compiled with the different compilers.
.SH COMPATIBLE COMPILERS
The MPI library may be used with any compiler that uses the same
lengths for basic data objects (such as
.I long double
) and that
uses compatible run-time libraries. On many systems, the various
compilers are compatible and may be used interchangably. There are
exceptions; if you use the
.I MPICH_FC
environment variable or the
.I \\-fc=name
command-line argument to override the choice of compiler
and encounter problems, try reconfiguring MPICH with the new compiler
and installing MPICH in a separate location. See the installation manual
for more details.
.SH EXAMPLES
To compile a single file
.I foo.f
, use
.nf
mpifort -c foo.f
.fi
To link the output and make an executable, use
.nf
mpifort -o foo foo.o
.fi
Combining compilation and linking in a single command
.nf
mpifort -o foo foo.f
.fi
is a convenient way to build simple programs.
.SH SELECTING A PROFILING LIBRARY
The
.I \\-profile=name
argument allows you to specify an MPI profiling
library to be used.
.I name
can have two forms:
.br
A library in the same directory as the MPI library
.br
The name of a profile configuration file
.br
If
.I name
is a library, then this library is included before the MPI
library. This allows the simple use of libraries that make use of the
MPI profiling interface and that are installed in the same directory as
the MPI library.
If
.I name.conf
is the name of a file in the sysconfdir directory, then this
is read and may define the following variables:
.PD 0
.TP
.B PROFILE_PRELIB
- Libraries (and paths) to include before the MPI library
.PD 1
.PD 0
.TP
.B PROFILE_POSTLIB
- Libraries to include after the MPI library
.PD 1
.PD 0
.TP
.B PROFILE_INCPATHS
- C preprocessor arguments for any include files
For example, to add
.I /usr/local/myprof/include
to the include path and
the library
.I libmyprof.a
in
.I /usr/local/myprof/lib
to the link step,
you could create the file
.I myprof.conf
with the lines
.PD 1
.nf
PROFILE_PRELIB="-L/usr/local/myprof/lib -lmyprof"
PROFILE_INCPATHS="-I/usr/local/myprof/include"
.fi
and place it in the sysconfdir directory (this directory is set at
configure time when MPICH is built). Then using the command-line
argument
.I \\-profile=myprof
will cause these
definitions to be added to the relevant compile commands.
.SH SEE ALSO
mpicc, mpicxx, mpifort, mpiexec
.br