Sous-routines pm_set_program_thread_mx et pm_set_program_thread_mm

Objectif

Active la programmation du moniteur de performances en mode de multiplexage de compteur et en mode multi-mode pour une unité d'exécution cible.

Bibliothèque

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

Syntaxe

#include <pmapi.h>  

int pm_set_program_thread_mx ( pid,  tid,  *prog) 
pid_t pid; 
tid_t tid; 
pm_prog_mx_t *prog; 

int pm_set_program_thread_mm ( pid, tid, *prog_mm)
pid_t pid;
tid_t tid;
pm_prog_mm_t *prog_mm; 

Descriptif

Les sous-routines pm_set_program_thread_mx et pm_set_program_thread_mm prennent en charge uniquement le modèle d'unités d'exécution 1: 1. Ils ont été remplacés respectivement par les sous-routines pm_set_program_pthread_mx et pm_set_program_pthread_mm , qui prennent en charge les modèles d'unités d'exécution 1: 1 et M: N. Un appel à la sous-routine pm_set_program_thread_mx ou à la sous-routine pm_set_program_thread_mm est équivalent respectivement à un appel à la sous-routine pm_set_program_pthread_mx ou à la sous-routine pm_set_program_pthread_mm avec un paramètre ptid égal à 0.

Les sous-routines pm_set_program_thread_mx et pm_set_program_thread_mm définissent la programmation du moniteur de performances respectivement en mode de multiplexage de compteurs ou en mode multiple pour une unité d'exécution de 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.

Le paramètre pm_set_program_thread_mx inclut la liste des tableaux d'événements à compter et un mode de comptage. Le mode est global à toutes les listes d'événements. Les événements à compter se trouvent dans une liste d'identificateurs d'événement.

Le paramètre pm_set_program_thread_mm inclut la liste des tableaux d'événements à compter et le mode associé dans lequel compter chaque tableau d'événements. Un mode de comptage est défini pour chaque tableau d'événements.

Les identificateurs d'événement doivent être sélectionnés dans les listes renvoyées par la sous-routine pm_initialize .

Le mode de comptage pour les deux sous-routines inclut le mode utilisateur, le mode noyau ou les deux, 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 pour retarder le comptage jusqu'à ce que la sous-routine pm_start_thread soit appelée.

Lorsque vous utilisez la sous-routine pm_set_program_thread_mm pour le comptage multimode, le mode d'arborescence de processus et le mode de démarrage du comptage sont fixés par leurs valeurs dans le premier ensemble de programmation.

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

Paramètres

Article Descriptif
PID ID processus de l'unité d'exécution cible. Le processus cible doit être un débogueur du processus appelant.
ID d'unité d'exécution ID de l'unité d'exécution cible.
* prog Indique les événements et les modes à utiliser dans la configuration du moniteur de performances. Le paramètre prog prend en charge les modes suivants:
UTILISATEUR_PM
Compte les processus en cours d'exécution en mode utilisateur (la valeur par défaut est Off).
NOYAU pm_kernel
Compte les 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).
* prog_mm Indique les événements et les modes associés à utiliser dans la configuration du moniteur de performances. Le paramètre prog_mm prend en charge les modes suivants:
UTILISATEUR_PM
Compte les processus en cours d'exécution en mode utilisateur (la valeur par défaut est Off).
NOYAU pm_kernel
Compte les 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 définie sur Non pour démarrer le comptage).
PM_PROCTREE
Définit le comptage sur On uniquement pour le processus appelant et ses descendants (la valeur par défaut est Off).

Le mode PM_PROCTREE et le mode PM_COUNT définis dans le premier paramètre corrigent la valeur du comptage.

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.