# 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.