I just learned that gathering statistics using I_MPI_STATS is not supported by version 2019 of Intel MPI (https://software.intel.com/en-us/articles/intel-mpi-library-2019-beta-release-notes-for-linux-os, "Removals").
I found this feature quite useful. Is there now a different way to gather MPI statistics? Will this removal be permanent or might the environment variable be re-introduced in a later version? If none is the case, what is the motivation for removing it?
You can use Application Performance Snapshot (APS) to gather MPI statistics.
Here is quick guide:
$ source apsvars.sh
$ mpirun <params> aps <binary>
- By default, APS collects hardware counters and MPI statistics. To disable hardware counters statistics collection:
mpirun <params> aps -c mpi <binary>
aps_result_<date> directory will be created.
$ aps-report aps_result_<date> - generate Summary report (text and HTML)
$ aps-report aps_result_<date> -fF - to generate diagram with information about all MPI operations called
- You can find information about available diagrams by calling $ aps-report -h or here.
- APS can collect different amount of statistics for each MPI function, you can control it by environment variable MPS_STAT_LEVEL ( 1 to 5, 1 is default) . More information on this can be found here.