Returns Performance Monitor data in counter multiplexing mode for the calling thread.
Performance Monitor APIs Library (libpmapi.a)
#include <pmapi.h>
int pm_get_data_mythread_mx (*pmdata)
pm_data_mx_t *pmdata;
int pm_get_tdata_mythread_mx (*pmdata, *time)
pm_data_mx_t *pmdata;
timebasestruct_t *time;
The pm_get_data_mythread_mx subroutine retrieves the current Performance Monitor data in counter multiplexing mode for the calling kernel thread.
The pm_get_tdata_mythread_mx subroutine retrieves the current Performance Monitor data in counter multiplexing mode for the calling kernel thread, and a timestamp indicating the last time the hardware counters were read.
The Performance Monitor data is always an array of a set (one per hardware counter on the machine used) of 64-bit values.
The user application must free the array allocated to store accumulated counts and times (the accu_set field of the pmdata parameter).
Item | Description |
---|---|
*pmdata | Pointer to a structure to contain the returned Performance Monitor data (array of accumulated counters, accumulated time and accumulated PURR and SPURR time for each event set counted) for the calling kernel thread. |
*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. |
Item | Description |
---|---|
0 | No errors occurred. |
Positive error code | Refer to the pm_error Subroutine to decode the error code. |
Refer to the pm_error Subroutine.
Item | Description |
---|---|
/usr/include/pmapi.h | Defines standard macros, data types, and subroutines. |