Sous-routine pm_set_program_pgroup

Objectif

Définit la programmation du moniteur de performances pour un pthread cible et crée un groupe de comptage.

Bibliothèque

Bibliothèque d'API Performance Monitor (libpmapi.a)

Syntaxe

#include <pmapi.h>  

int pm_set_program_pgroup ( pid,  tid,  ptid,  *prog)
pid_t pid;
tid_t tid;
ptid_t ptid;
pm_prog_t *prog;

Descriptif

La sous-routine pm_set_program_pgroup définit la programmation du moniteur de performances pour un pthread cible. Le pthread doit être arrêté et doit faire partie d'un processus de débogage, sous le contrôle du processus appelant. Le paramètre inclut les événements à compter et un mode de comptage. Les événements à compter figurent dans une liste d'identificateurs d'événement. Les identificateurs doivent être sélectionnés dans les listes renvoyées par la sous-routine pm_inititialize .

Cet appel crée également un groupe de comptage, qui inclut le pthread cible et tout pthread qu'il ou l'un de ses descendants créera dans le futur. Le cas échéant, le groupe peut être défini comme contenant également toutes les unités d'exécution existantes et futures appartenant au processus cible.

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é.

Le mode de comptage inclut le mode utilisateur et / ou le mode noyau, ainsi que l'état de comptage initial. Les valeurs par défaut sont définies sur Off pour le mode utilisateur et le mode noyau, et l'état par défaut initial est défini sur différé jusqu'à l'appel de la sous-routine pm_start_pgroup .

Si la liste inclut un événement pouvant être utilisé avec un seuil (comme indiqué par la sous-routine pm_initialize ), une valeur de seuil peut également être spécifiée.

Paramètres

Article Descriptif
PID ID de processus de pthread cible. Le processus cible doit être un débogueur du processus appelant.
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 Indique les modes d'événement à utiliser dans la configuration du moniteur de performances. Les modes suivants sont pris en charge:
UTILISATEUR_PM
Décompte les processus en cours d'exécution en mode utilisateur (la valeur par défaut est Off)
NOYAU pm_kernel
Nombre de processus en cours d'exécution en mode noyau (la valeur par défaut est Off)
NOM_COMPTE
Démarre le comptage immédiatement (la valeur par défaut est Not to Start Counting)
PROCESSUS PM_DE
Crée un groupe de comptage au niveau du processus

Valeurs renvoyées

Article Descriptif
0 L'opération a abouti.
Positive error code 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.