pm_get_data_mygroup_mx or pm_get_tdata_mygroup_mx Subroutine
Purpose
Returns Performance Monitor data in counter multiplexing mode for the counting group to which the calling thread belongs.
Library
Performance Monitor APIs Library (libpmapi.a)
Syntax
#include <pmapi.h>
int pm_get_data_mygroup_mx (*pmdata)
pm_data_mx_t *pmdata;
int pm_get_tdata_mygroup_mx (*pmdata, *time)
pm_data_mx_t *pmdata;
timebasestruct_t *time;
Description
The pm_get_data_mygroup_mx subroutine retrieves the current Performance Monitor data in counter multiplexing mode for the group to which the calling kernel thread belongs.
The pm_get_tdata_mygroup_mx subroutine retrieves the current Performance Monitor data in counter multiplexing mode for the group to which the calling thread belongs, and a timestamp indicating the last time the hardware counters were read.
The Performance Monitor data is always an array of set (one per hardware counter on the machine used) of 64-bit values. The information returned also includes the characteristics of the group, such as the number of its members, if it is a process level group, and if its counters are consistent with the sum of the counters for all of the threads in the group.
The user application must free the array allocated to store accumulated counts and times (accu_set field of pmdata).
Parameters
Item | Description |
---|---|
*pmdata | Pointer to a structure to return the Performance Monitor data (array of accumulated counters, accumulated time and accumulated PURR and SPURR time for each event set counted) for the group to which the calling thread belongs. |
*time | Pointer to a structure containing the timebase value the last time the hardware Performance Monitoring counters were read. This can be converted to time using the time_base_to_time subroutine. |
Return Values
Item | Description |
---|---|
0 | No errors occurred. |
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. |