The latency testsuite

The latency test-suite is a historically grown collection of tests, which has been used to measure a wide variety of different performance characteristics. Recently, the test-suite has been re-arranged such that it provides building blocks for point-to-point benchmarks, creating an easily extendable benchmarking environment. End-users can thus create their own point-to-point benchmark which incorporates relevant features of their application and thus evaluate the performance of their data exchange routines.

Among the building blocks are: The test-suite uses two different methods for determining the next message size to be measured: a multiplicative increase for short message length, and an additive increase of the message size for large messages. This enables a detailed analysis of short message behavior as well as a reasonable number of measurements for large messages.

The latency test-suite reports for each message size an average, maximum and minimum bandwidth achieved and the according execution time. Furthermore, the standard deviation is reported for each message size, indicating the stability of the measurement. The output can either be written to standard output or to a file, using either standard UNIX file operations or relying on MPI-I/O. Sample gnuplot scripts are provided for visualizing the output as well as simple programs which enable comparing several measurements.

For each building block, several reference modules are available. As an example, several constructors for derived datatypes are provided as well as different data transfer primitives or communicator constructors.

The latest version (0.9.5) of the testsuite can be downloaded here