Sous-routines pm_get_program_pthread_mx et pm_get_program_pthread_mm
Objectif
Extrait les paramètres du moniteur de performances en mode de multiplexage de compteur et en mode multiple pour un pthread cible.
Bibliothèque
Bibliothèque d'API Performance Monitor (libpmapi.a)
Syntaxe
Descriptif
pm_get_program_pthread_mx et les sous-routines pm_set_program_pthread_mm extraient les paramètres du moniteur de performances pour un pthread cible. Le pthread doit être arrêté et faire partie d'un processus de débogage, c'est-à-dire sous le contrôle du processus appelant. Cela inclut les informations de mode et les événements en cours de comptage, qui se trouvent dans un tableau de listes d'identificateurs d'événement. Les identificateurs d'événement doivent être sélectionnés dans les listes renvoyées par la sous-routine pm_inititialize .
Si pthread s'exécute en mode 1: 1, seul le paramètre tid doit être spécifié. Si pthread s'exécute en mode m: n, seul le paramètre ptid doit être spécifié. Si les paramètres ptid et tid sont tous deux spécifiés, ils doivent faire référence à un seul pthread avec le paramètre ptid spécifié et en cours d'exécution sur une unité d'exécution de noyau avec le paramètre tid spécifié.
Lors du comptage en mode multiplexage, le mode est global à toutes les listes d'événements. Lors du comptage en mode multimode, un mode est associé à chaque liste d'événements.
Le mode de comptage comprend le mode utilisateur, le mode noyau et l'état de comptage en cours.
Si la liste inclut un événement qui peut être utilisé avec un seuil (comme indiqué par la sous-routine pm_initialize ), une valeur de seuil est également renvoyée.
L'application utilisateur doit libérer le tableau alloué pour stocker les listes d'événements (la zone events_set dans le paramètre prog ).
Paramètres
| Article | Descriptif |
|---|---|
| PID | ID de processus de pthread cible. Le processus cible doit être un argument d'un processus de débogage. |
| ID d'unité d'exécution | ID unité d'exécution du pthread cible. Pour ignorer ce paramètre, définissez-le sur 0. |
| ptid | ID pthread de la pthread cible. Pour ignorer ce paramètre, définissez-le sur 0. |
| * prog | Renvoie les événements et les modes du moniteur de performances qui sont définis. Il prend en charge les modes suivants:
|
| * prog_mm | Renvoie les événements du moniteur de performances et les modes associés définis. Il prend en charge les modes suivants:
Le mode PM_PROCTREE et le mode PM_COUNT sont communs à tous les modes définis. |
Valeurs renvoyées
| Article | Descriptif |
|---|---|
| 0 | Aucune erreur ne s'est produite. |
| Positive error code | Voir la sous-routine pm_error pour décoder le code d'erreur. |
Codes d'erreur
Voir la sous-routine pm_error (pm_error Subroutine).
Fichiers
| Article | Descriptif |
|---|---|
| /usr/include/pmapi.h | Définit des macros standard, des types de données et des sous-routines. |