pm_set_program Subroutine
Purpose
Sets system wide Performance Monitor programmation.
Library
Performance
Monitor
APIs Library (libpmapi.a
)
Syntax
#include <pmapi.h>
int pm_set_program ( *prog)
pm_prog_t *prog;
Description
The pm_set_program subroutine sets system wide Performance Monitor programmation. The setting includes the events to be counted, and a mode in which to count. The events to count are in a list of event identifiers. The identifiers must be selected from the lists that are returned by the pm_init subroutine.
The counting mode includes User Mode and/or
Kernel Mode, the Initial Counting
State, and the Process Tree Mode. The Process Tree Mode sets counting to On only for the calling
process and its descendants. The defaults are set to Off for User Mode and Kernel Mode. The initial
default state is set to delay counting until the pm_start subroutine is called,
and to count the activity of all the processes running in the system.
If the list includes an event, which can be used with a threshold (as indicated by the pm_init subroutine), a threshold value can also be specified.
On some platforms,
event groups can be specified instead of individual events. This is
done by setting the bitfield is_group
in the mode, and placing
the group ID into the first element of the events array. (The group
ID was obtained by pm_init).
Parameters
Item | Description |
---|---|
*prog | Specifies the events and modes to use in Performance Monitor setup. The following modes are
supported:
|
Return Values
Item | Description |
---|---|
0 | Operation completed successfully. |
Positive error code | Refer to the pm_error Subroutine to decode the error code. |
Error Codes
Refer to the pm_error Subroutine.
Files
Item | Description |
---|---|
/usr/include/pmapi.h | Defines standard macros, data types, and subroutines. |