Sous-routine pm_get_data_group, pm_get_tdata_group et pm_get_Tdata_group
Objectif
Renvoie les données du moniteur de performances pour le groupe de comptage auquel appartient une unité d'exécution cible.
Bibliothèque
Bibliothèque d'API Performance Monitor (libpmapi.a)
Syntaxe
#include <pmapi.h>
int pm_get_data_group (pid, tid, *pmdata)
pid_t pid;
tid_t tid;
pm_data_t *pmdata;
int pm_get_tdata_group (pid, tid, *pmdata, *time)
pm_data_t *pmdata;
pid_t pid;
tid_t tid;
timebasestruct_t *time;
int pm_get_Tdata_group (pid, tid, *pmdata, *times)
pm_data_t *pmdata;
pid_t pid;
tid_t tid;
pm_accu_time_t *times;Descriptif
Ces sous-routines prennent en charge uniquement le modèle d'unités d'exécution 1: 1. Elles ont été remplacées par les sous-routines pm_get_data_pgroup et pm_get_tdata_pgroup , qui prennent en charge les modèles d'unités d'exécution 1: 1 et M: N. Les appels à ces sous-routines sont équivalents aux appels aux sous-routines pm_get_data_pgroup et pm_get_tdata_pgroup avec un paramètre ptid égal à 0.
La sous-routine pm_get_data_group extrait les données du moniteur de performances en cours pour le groupe de comptage auquel appartient une unité d'exécution du noyau cible. L'unité d'exécution doit être arrêtée et faire partie d'un processus de débogage sous le contrôle du processus appelant.
La sous-routine pm_get_tdata_group extrait les données du moniteur de performances en cours pour le groupe de comptage auquel appartient une unité d'exécution cible, ainsi qu'un horodatage indiquant l'heure de la dernière lecture des compteurs matériels.
La sous-routine pm_get_Tdata_group extrait les données du moniteur de performances en cours pour le groupe de comptage auquel appartient une unité d'exécution cible, ainsi que le temps cumulé (base de temps, temps PURR et temps SPURR) pendant lequel les événements ont été comptabilisés.
Les données de l'Analyseur de performances sont toujours un ensemble (un par compteur matériel sur la machine utilisée) de valeurs de 64 bits. Les informations renvoyées incluent également les caractéristiques du groupe, telles que le nombre de ses membres, s'il s'agit d'un groupe de niveau processus, et si ses compteurs sont cohérents avec la somme des compteurs de toutes les unités d'exécution du groupe.
Paramètres
| Article | Descriptif |
|---|---|
| PID | Identificateur de processus d'une unité d'exécution cible. Le processus cible doit être un argument d'un processus de débogage. |
| ID d'unité d'exécution | Identificateur d'unité d'exécution d'une unité d'exécution cible. |
| * pmdata | Pointeur vers une structure pour renvoyer les données du moniteur de performances pour le groupe auquel appartient l'unité d'exécution cible. |
| * heure | Pointeur vers une structure contenant la valeur de base de temps lors de la dernière lecture des compteurs de surveillance des performances du matériel. Il peut être converti en temps à l'aide de la sous-routine time_base_to_time . |
| * fois | Pointeur vers une structure contenant le temps cumulé (base de temps, temps PURR et temps SPURR) que les événements ont été comptés. Chaque compteur de temps peut être converti en temps à l'aide de la sous-routine time_base_to_time . |
Valeurs renvoyées
| Article | Descriptif |
|---|---|
| 0 % | Aucune erreur ne s'est produite. |
| Code d'erreur positif | Reportez-vous à la sous-routine pm_error pour décoder le code d'erreur. |
Codes d'erreur
Reportez-vous à la sous-routine pm_error.
Fichiers
| Article | Descriptif |
|---|---|
| /usr/include/pmapi.h | Définit des macros standard, des types de données et des sous-routines. |