Performance measurements


Up: Programming Tips Next: Tools Previous: Jumpshot


Figure 1: Sample output from  mpptest

The mpich sdk examples nt mpptest directory contains a sophisticated tool for measuring latency and bandwidth for mpich on your system. After building mpptest from the examples workspace in MSDEV Studio, simply change to the mpichsdk examples nt mpptest directory and do

    mpirun -np 2 mpptest -gnuplot > out.gpl 
The file out.gpl will then contain the necessary gnuplot commands. The file mppout.gpl will contain the data. To view the data with gnuplot, use:
    gnuplot out.gpl 
or use
    load 'out.gpl' 
from within gnuplot. You can use
    gnuplot 
    set term postscript eps 
    set output "foo.eps" 
    load 'out.gpl' 
to create an Encapsulated Postscript graph such as the one in Figure 1 .

The program mpptest has a wide variety of capabilities; the option -help will list them. For example, mpptest can automatically pick message lengths to discover any sudden changes in behavior and can investigate the ability to overlap communication with computation. More information is available at http://www.mcs.anl.gov/mpi/mpptest.

gnuplot can be found here: ftp://ftp.dartmouth.edu/pub/gnuplot

Benchmarking can be very tricky. Some common benchmarking errors are discussed at http://www.mcs.anl.gov/mpi/mpptest/hownot.html. The paper [10] discusses these issues at more length.



Up: Programming Tips Next: Tools Previous: Jumpshot