pmu_trace Measurement Report Description

With the pmu_trace measurement, produced by the pmu_trace measurement configuration file, HP Caliper measures traces of sampled PMU data associated with the application for each kernel thread. This data includes cache misses, TLB misses, ALAT misses, branch mispredictions, instruction addresses, and CPU events.

These metrics are sampled using the processor's performance monitoring unit (PMU). The number of metrics HP Caliper can accumulate during a single run of your application is constrained by the underlying PMU. These constraints are described in the pmu_trace measurement configuration file.

The CPU events you can choose from are listed in the file itanium2_cpu_counters.txt, located in the HP Caliper home directory in the doc/text subdirectory.

For the CPU events applicable for Intel® Itanium® 9500 processors, see the Intel's Software Optimization Guide for Intel® Itanium® 9500 processors.

The pmu_trace measurement always reports kernel-thread data whether the --threadoption is specified or not.

Example Command Line for Text Report

$ caliper pmu_trace -o reports/samplecpu.txt ./wordplay thequickbrownfox

Example Command Line for CSV Report

$ caliper pmu_trace --csv csvout ./wordplay thequickbrownfox

scgprof Measurement Report Description

With the scgprof measurement, produced by the scgprof measurement configuration file, HP Caliper measures and reports both flat and call graph profiles (much like standard gprof).

The call graph is produced by statistical sampling of the processor's performance monitoring unit (PMU) to determine function calls in an application. The call graph is not exact, because it does not show every function call, but it is statistically useful.

Example Command Line for Text Report

$ caliper scgprof -o reports/scgprof.txt ./wordplay thequickbrownfox

Example Command Line for CSV Report

$ caliper scgprof --csv csvout ./wordplay thequickbrownfox

scgprof Measurement Report Metrics (Flat Profile)

Table 29 (page 225) shows the information found in Sampled Call Graph Profile reports. In this table, “program object” refers to any of the following:

Load module

Function

Source statement

Instruction bundle

The numbers of calls in the descriptions are smaller than the actual calls made by the application, because the call graph is produced by sampling.

224 Descriptions of Measurement Reports