Returns Performance Monitor data in counter multiplexing mode for a target thread.
Performance Monitor APIs Library (libpmapi.a)
#include <pmapi.h>
int pm_get_data_thread_mx (pid, tid, *pmdata)
pid_t pid;
tid_t tid;
pm_data_mx_t *pmdata;
int pm_get_tdata_thread_mx (pid, tid, *pmdata, *time)
pid_t pid;
tid_t tid;
pm_data_mx_t *pmdata;
timebasestruct_t *time;
These subroutines support only the 1:1 threading model. They have been superseded by the pm_get_data_pthread_mx and pm_get_tdata_pthread_mx subroutines, which support both the 1:1 and the M:N threading models. Calls to these subroutines are equivalent to calls to the pm_get_data_pthread_mx and pm_get_tdata_pthread_mx subroutines with a ptid parameter equal to 0.
The pm_get_data_thread_mx subroutine retrieves the current Performance Monitor data in counter multiplexing mode for a target kernel thread. The thread must be stopped and must be part of a debuggee process under the control of a calling process.
The pm_get_tdata_thread_mx subroutine retrieves the current Performance Monitor data in counter multiplexing mode for a target 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 |
---|---|
pid | Process identifier of a target thread. The target process must be a debuggee of the caller process. |
tid | Thread identifier of a target thread. |
*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 target 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. |