PyPOP Package Layout

The PyPOP package is laid out with two API levels. The first provides a high-level inteface to load summary statistics from traces and calculate various POP metrics from them. This is backed by a low level interface which provides more direct access to the capabilites of the various tools, allowing scripting of custom analyses.

High Level Interface

The key components of the PyPOP package are the metrics and traceset modules. These contain the classes handling the loading and analysis of traces, and calculation of metrics.

Trace Data Summary Statistics Calculator Classes

PyPop provides classes for importing summary statistics for different profiling tools.

Currently the following tools are supported:

  • Extrae

Metric Calculator Classes

PyPOP provides calculator classes for generating the POP Metrics for different application types.

Currently PyPOP supports calculation of the following Metric types:

MPI_Metrics Pure MPI Metrics.
MPI_OpenMP_Metrics Proposed Hybrid MPI+OpenMP Metrics.

Low Level Interface

Extrae Trace Utilities

Routines for analysis and management of Extrae traces, including Paramedir automation.

Dimemas Automation

Helper routines to run Dimemas from Python, including the special case of ideal trace generation.

PRV Trace Loader

Support for directly loading PRV trace data as Pandas dataframes

Miscellaneous utility routines

General utility and helper routines not specific to a particular tool.