Blame MpiApps/apps/README

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.