A newer version of this document is available. Customers should click here to go to the newest version.
Measuring Pure Communication Time
To measure pure execution time of nonblocking collective operations, use the _pure flavor of the IMB-NBC benchmarks. The benchmark methodology is consistent with the one used for regular collective operations:
Each rank performs the predefined amount of iterations and calculates the mean value.
The basic MPI data type for all messages is MPI_BYTE for pure data movement functions and MPI_FLOAT for reductions.
If the operation requires the root process to be specified, the root process is selected round-robin through iterations.
These benchmarks are not included into the default list of IMB-NBC benchmarks. To run a benchmark, specify the particular benchmark name or use the –include command-line parameter. For example:
$ mpirun -np 2 IMB-NBC Ialltoall_pure $ mpirun -np 2 IMB-NBC -include Iallgather_pure Ialltoall_pure
Displaying Results
Pure nonblocking collective benchmarks show bare timing values. Since execution time may vary for different ranks, three timing values are shown: maximum, minimum, and the average time among all the ranks participating in the benchmark measurements.
See Also
IMB-NBC Benchmarks
Measuring Communication and Computation Overlap
Command-Line Control