User guide
IB0054606-02 A A-1
A Benchmark Programs
Several MPI performance measurement programs are installed by default with the
MPIs you choose to install (such as Open MPI, MVAPICH2 or MVAPICH). This
appendix describes a few of these benchmarks and how to run them. Several of
these programs are based on code from the group of Dr. Dhabaleswar K. Panda
at the Network-Based Computing Laboratory at the Ohio State University. For
more information, see: http://mvapich.cse.ohio-state.edu/
These programs allow you to measure MPI latency, bandwidth, and message rate
between two or more nodes in your cluster. The executables are installed by
default under /usr/mpi/compiler/mpi/tests/osu_benchmarks-3.1.1.
The remainder of this chapter will assume that the gcc-compiled version of Open
MPI was installed in the default location of
/usr/mpi/gcc/openmpi-1.4.3-qlc and that mpi-selector is used to choose
this Open MPI version as the MPI to be used.
The following examples are intended to show only the syntax for invoking these
programs and the meaning of the output. They are not representations of actual IB
performance characteristics.
For additional MPI sample applications refer to Section 5 of the QLogic FastFabric
Command Line Interface Reference Guide.
Benchmark 1: Measuring MPI Latency Between
Two Nodes
In the MPI community, latency for a message of given size is the time difference
between a node program’s calling MPI_Send and the time that the corresponding
MPI_Recv in the receiving node program returns. The term latency, alone without
a qualifying message size, indicates the latency for a message of size zero. This
latency represents the minimum overhead for sending messages, due to both
software overhead and delays in the electronics of the fabric. To simplify the
timing measurement, latencies are usually measured with a ping-pong method,
timing a round-trip and dividing by two.