|
Packit |
857059 |
This package contains Mpi applications and packages for testing and
|
|
Packit |
857059 |
evaluation.
|
|
Packit |
857059 |
|
|
Packit |
857059 |
|
|
Packit |
857059 |
|
|
Packit |
857059 |
NOTE TO RPM USERS
|
|
Packit |
857059 |
-------------------------------------------------------------------
|
|
Packit |
857059 |
If you have installed the opa-fastfabric package through your distro
|
|
Packit |
857059 |
you likely only have a subset of the applications required for full
|
|
Packit |
857059 |
testing. Certain run scripts, builds, and functionality will be
|
|
Packit |
857059 |
limited. To enable full functionality, the opa-mpi-apps package
|
|
Packit |
857059 |
must be installed. This package is available from Intel and contained
|
|
Packit |
857059 |
in Intel Fabric Suite (IFS).
|
|
Packit |
857059 |
|
|
Packit |
857059 |
|
|
Packit |
857059 |
MPICH_PREFIX ENVIRONMENT VARIABLE:
|
|
Packit |
857059 |
----------------------------------
|
|
Packit |
857059 |
|
|
Packit |
857059 |
By default, Make will build these programs with the MPI installed in
|
|
Packit |
857059 |
/usr/mpi/gcc/openmpi*
|
|
Packit |
857059 |
|
|
Packit |
857059 |
You can override this by setting MPICH_PREFIX in your .bashrc file. For
|
|
Packit |
857059 |
example, the following will use Intel MPI:
|
|
Packit |
857059 |
|
|
Packit |
857059 |
export MPICH_PREFIX=/opt/intel/impi_latest/intel64
|
|
Packit |
857059 |
|
|
Packit |
857059 |
|
|
Packit |
857059 |
USING THESE TOOLS WITH MPI-SELECTOR:
|
|
Packit |
857059 |
------------------------------------
|
|
Packit |
857059 |
|
|
Packit |
857059 |
In OFED (and IFS), the normal method of selecting an MPI is to
|
|
Packit |
857059 |
use the mpi-selector commands (type "man mpi-selector-menu" and "man
|
|
Packit |
857059 |
mpi-selector" for details on those commmands).
|
|
Packit |
857059 |
|
|
Packit |
857059 |
To use mpi-selector with these scripts, add this line to your .bashrc
|
|
Packit |
857059 |
file:
|
|
Packit |
857059 |
|
|
Packit |
857059 |
source /usr/src/opa/mpi_apps/get_selected_mpi.sh
|
|
Packit |
857059 |
|
|
Packit |
857059 |
|
|
Packit |
857059 |
|
|
Packit |
857059 |
COMPILING THE TEST PROGRAMS:
|
|
Packit |
857059 |
----------------------------
|
|
Packit |
857059 |
|
|
Packit |
857059 |
The top level Makefile will build all the applications and benchmarks,
|
|
Packit |
857059 |
using the default (described above) or the value of MPICH_PREFIX (also
|
|
Packit |
857059 |
described above).
|
|
Packit |
857059 |
|
|
Packit |
857059 |
Some useful make targets include:
|
|
Packit |
857059 |
|
|
Packit |
857059 |
clean - remove all binaries. Useful when changing MPIs.
|
|
Packit |
857059 |
all - will build everything, including NPB.
|
|
Packit |
857059 |
quick - builds only bandwidth, latency, pmb and xhpl.
|
|
Packit |
857059 |
|
|
Packit |
857059 |
|
|
Packit |
857059 |
|
|
Packit |
857059 |
RUNNING THE TEST PROGRAMS:
|
|
Packit |
857059 |
--------------------------
|
|
Packit |
857059 |
|
|
Packit |
857059 |
A top level "run" script is provided to run all the applications as a
|
|
Packit |
857059 |
regression test. Other scripts will run individual benchmarks. These
|
|
Packit |
857059 |
scripts assume the existence of a local "mpi_hosts" file [alternate name can be
|
|
Packit |
857059 |
exported in MPI_HOSTS if desired] (in mpirun mode)
|
|
Packit |
857059 |
and that mpd is already running (if you're using mvapich2). For example,
|
|
Packit |
857059 |
to run the bandwith test, simply type:
|
|
Packit |
857059 |
|
|
Packit |
857059 |
# ./run_bw
|
|
Packit |
857059 |
|
|
Packit |
857059 |
The scripts log the output of the MPI programs to the
|
|
Packit |
857059 |
/usr/src/opa/mpi_apps/logs directory.
|
|
Packit |
857059 |
|
|
Packit |
857059 |
|
|
Packit |
857059 |
|
|
Packit |
857059 |
TUNING THE TEST PROGRAMS:
|
|
Packit |
857059 |
-------------------------
|
|
Packit |
857059 |
|
|
Packit |
857059 |
MVAPICH, MVAPICH2 and OpenMPI are all extremely tunable, and a complete
|
|
Packit |
857059 |
discussion of all their settings is far beyond the scope of this document.
|
|
Packit |
857059 |
However, these scripts to provide examples of tuning the different MPIs
|
|
Packit |
857059 |
as a way to get started.
|
|
Packit |
857059 |
|
|
Packit |
857059 |
When using IFS, you can tune any of the MPIs. See the files
|
|
Packit |
857059 |
mvapich2.params and openmpi.params for details.
|
|
Packit |
857059 |
Each file describes the syntax of the parameter file, provides a link to
|
|
Packit |
857059 |
online documentation on how to tune that MPI and several sample parameters.
|