beautypg.com

5 using hpcpi labels, Overview, Chapter 5: “using hpcpi labels – HP XC System 3.x Software User Manual

Page 59

background image

5 Using HPCPI Labels

This chapter describes how to use HPCPI labels. This chapter addresses the following topics:

“Overview” (page 59)

“Simple HPCPI Session Using Labels” (page 60)

“Label Selectors” (page 62)

“Multiple Labels” (page 64)

“Reusing Labels” (page 64)

“Comparing Epochs and Labels” (page 64)

“Label Examples” (page 65)

“Creating Labels in Programs” (page 67)

Overview

An HPCPI label enables you to isolate performance data for processes according to process ID,
process group ID, user ID, or CPU number. To create a label, use the hpcpictl label command.
You can specify the label name when using HPCPI analysis tools (hpcpiprof, hpcpilist,
hpcpitopcounts

) to select the data set for the label.

When using labels, you must select the processes to generate the event data for the label and the
duration for the label. In its simplest form, the hpcpictl label command has the following
syntax:

hpcpictl label label_name command [arg...]

Using hpcpictl label starts a label with the specified name and executes the specified
command. The optional arguments are arguments for the specified command. By default, the
hpcpictl

utility associates performance data from the process for the command it executes

with the label. The duration for the label is the lifetime of the process.

You can also select label data according to other selectors, such as parent PID, process group ID,
session ID, user ID, or CPU number. Examples where alternate selectors are useful include the
following:

Using the process group ID to select data for utilities that spawn multiple processes, such
as make.

Using the user ID to select data for utilities that create a new session and process group
when launching processes, such as mpirun.

“Label Selectors” (page 62)

describes how to use HPCPI label selectors.

When you have a label for a process, HPCPI also applies the label to events for code executed
in other images by the process, such as routines in a shared library or kernel routines. For example,
if you have a label for the process myApp and myApp executes code from libc (libc-2.3.4.so),
HPCPI associates the events for that libc code with the label.

Overview

59