IPM Hompepage
Overview | Profiling vs. Tracing | Installation | Using IPM | Implementation | References
 

IPM is supported by the National Science Foundation under award number 0721397.

 


Integrated Performance Monitoring (IPM) Overview

IPM is a portable profiling infrastructure for parallel codes. It provides a low-overhead performance summary of the computation and communication in a parallel program. The amount of detailed reported is selectable at runtime via environment variables or through a MPI_Pcontrol interface. IPM has extremely low overhead, is scalable and easy to use requiring no source code modification.

IPM runs on IBM SP's, Linux clusters using MPICH, Altix, SX6, and the Earth Simulator. IPM is available under an Open Source software license (LGPL).

IPM brings together several types of information important to developers and users of parallel HPC codes. The information is gathered in a way the tries to minimize the impact on the running code, maintaining a small fixed memory footprint and using minimal amounts of CPU. When the profile is generated the data from individual tasks is aggregated in a scalable way.

For downloads, news, and other information, visit our Project Page.

The monitors that IPM currently integrates are:

  • MPI: communication topology and statistics for each MPI call and buffer size.
  • HPM: PAPI (many) or PMAPI (AIX) performance events.
  • Memory: wallclock, user and system timings.
  • Switch: Communication volume and packet loss.

Examples are sometimes better than explanation.

The 'integrated' in IPM is multi-faceted. It refers to binding the above information together through a common interface and also the integration of the records from all the parallel tasks into a single report.


Last changed: Fri, 04 Sep 2009 17:28:45 +0000 on shell-21011 by fuerling
Website maintained by: The IPM developers. To get help send email to: