perkamon - en to fr translation catalogue (398 entries)

note: type: TH
en: 2019-10-10
fr: 10 octobre 2019

note: type: TH
en: Linux Programmer's Manual
fr: Manuel du programmeur Linux

note: type: SH
en: NAME
fr: NOM

note: type: Plain text
en: perf_event_open - set up performance monitoring
fr: perf_event_open - Définir la surveillance des performances

note: type: Plain text
en: I<Note>: There is no glibc wrapper for this system call; see NOTES.
fr: I<Remarque> : il n'existe pas de fonction glibc autour de cet appel système ; consultez B<NOTES>.

note: type: Plain text
en: Given a list of parameters, B<perf_event_open>()  returns a file descriptor, for use in subsequent system calls (B<read>(2), B<mmap>(2), B<prctl>(2), B<fcntl>(2), etc.).
fr: À partir d'une liste de paramètres, B<perf_event_open>() renvoie un descripteur de fichier, pour une utilisation dans les appels système suivants (B<read>(2), B<mmap>(2), B<prctl>(2), B<fcntl>(2), etc.).

note: type: Plain text
en: A call to B<perf_event_open>()  creates a file descriptor that allows measuring performance information.  Each file descriptor corresponds to one event that is measured; these can be grouped together to measure multiple events simultaneously.
fr: Un appel de B<perf_event_open>() crée un descripteur de fichier qui permet de mesurer les renseignements de performance. Tous les descripteurs de fichier correspondent chacun à un événement mesuré ; ils peuvent être regroupés pour mesurer plusieurs événements simultanément.

note: type: Plain text
en: Events can be enabled and disabled in two ways: via B<ioctl>(2)  and via B<prctl>(2).  When an event is disabled it does not count or generate overflows but does continue to exist and maintain its count value.
fr: Les événements peuvent être activés et désactivés de deux façons : à l'aide de B<ioctl>(2) ou de B<prctl>(2). Quand un événement est désactivé, il ne décompte ni ne génère de dépassement, mais continue vraiment d'exister et maintient sa valeur de décompte.

note: type: Plain text
en: Events come in two flavors: counting and sampled.  A I<counting> event is one that is used for counting the aggregate number of events that occur.  In general, counting event results are gathered with a B<read>(2)  call.  A I<sampling> event periodically writes measurements to a buffer that can then be accessed via B<mmap>(2).
fr: Les événements existent en deux saveurs : de comptage et d'échantillonnage. Un événement de I<comptage> sert à comptabiliser le nombre total d'événements qui se produisent. En général, les résultats d'un événement de comptage sont recueillis avec un appel B<read>(2). Un événement d'I<échantillonnage> écrit périodiquement les mesures dans un tampon qui peut ensuite être accédé à l'aide de B<mmap>(2).

note: type: Plain text
en: The I<pid> and I<cpu> arguments allow specifying which process and CPU to monitor:
fr: Les arguments I<pid> et I<cpu> permettent d’indiquer le processus et le processeur à surveiller :

note: type: TP
en: B<pid == 0> and B<cpu == -1>
fr: B<pid == 0> et B<cpu == -1>

note: type: Plain text
en: This measures the calling process/thread on any CPU.
fr: Cela mesure le processus ou thread appelant sur tous les processeurs.

note: type: TP
en: B<pid == 0> and B<cpu E<gt>= 0>
fr: B<pid == 0> et B<cpu E<gt>= 0>

note: type: Plain text
en: This measures the calling process/thread only when running on the specified CPU.
fr: Cela ne mesure le processus ou thread appelant que s’il est en cours d’exécution sur le processeur indiqué.

note: type: TP
en: B<pid E<gt> 0> and B<cpu == -1>
fr: B<pid E<gt> 0> et B<cpu == -1>

note: type: Plain text
en: This measures the specified process/thread on any CPU.
fr: Cela mesure le processus ou thread indiqué sur tous les processeurs.

note: type: TP
en: B<pid E<gt> 0> and B<cpu E<gt>= 0>
fr: B<pid E<gt> 0> et B<cpu E<gt>= 0>

note: type: Plain text
en: This measures the specified process/thread only when running on the specified CPU.
fr: Cela ne mesure le processus ou thread indiqué que s’il est en cours d’exécution sur le processeur indiqué.

note: type: TP
en: B<pid == -1> and B<cpu E<gt>= 0>
fr: B<pid == -1> et B<cpu E<gt>= 0>

note: type: Plain text
en: This measures all processes/threads on the specified CPU.  This requires B<CAP_SYS_ADMIN> capability or a I</proc/sys/kernel/perf_event_paranoid> value of less than 1.
fr: Cela mesure tous les processus et threads sur le processeur indiqué. Cela nécessite la capacité B<CAP_SYS_ADMIN> ou une valeur I</proc/sys/kernel/perf_event_paranoid> strictement inférieure à 1.

note: type: TP
en: B<pid == -1> and B<cpu == -1>
fr: B<pid == -1> et B<cpu == -1>

note: type: Plain text
en: This setting is invalid and will return an error.
fr: Ce réglage est incorrect et renverra une erreur.

note: type: Plain text
en: The I<group_fd> argument allows event groups to be created.  An event group has one event which is the group leader.  The leader is created first, with I<group_fd> = -1.  The rest of the group members are created with subsequent B<perf_event_open>()  calls with I<group_fd> being set to the file descriptor of the group leader.  (A single event on its own is created with I<group_fd> = -1 and is considered to be a group with only 1 member.)  An event group is scheduled onto the CPU as a unit: it will be put onto the CPU only if all of the events in the group can be put onto the CPU.  This means that the values of the member events can be meaningfully compared\(emadded, divided (to get ratios), and so on\(emwith each other, since they have counted events for the same set of executed instructions.
fr: L'argument I<group_fd> permet aux groupes d'événements d'être créés. Un groupe d'événements a un événement qui est le leader de groupe. Le leader est d'abord créé, avec I<group_fd> = -1. Les autres membres du groupe sont créés par les appels B<perf_event_open>() suivants, avec I<group_fd> défini au descripteur de fichier du leader de groupe (un événement unique créé avec I<group_fd> = -1 est considéré comme formant un groupe d'un seul membre). Un événement de groupe est programmé dans le processeur comme un bloc : il ne sera mis dans le processeur que si tous les événements du groupe peuvent être mis dans le processeur. Cela veut dire que les valeurs des événements de tous les membre peuvent être comparées — ajoutées, divisées (pour obtenir des rapports), etc. — ensemble de manière significative, puisqu'elles ont compté les événements pendant les mêmes instructions exécutées.

note: type: Plain text
en: The I<flags> argument is formed by ORing together zero or more of the following values:
fr: L'argument I<flags> est constitué d’un I<OU> binaire entre une ou plusieurs des valeurs suivantes.

note: commit a21b0b354d4ac39be691f51c53562e2c24443d9e type: Plain text
en: This flag enables the close-on-exec flag for the created event file descriptor, so that the file descriptor is automatically closed on B<execve>(2).  Setting the close-on-exec flags at creation time, rather than later with B<fcntl>(2), avoids potential race conditions where the calling thread invokes B<perf_event_open>()  and B<fcntl>(2)  at the same time as another thread calls B<fork>(2)  then B<execve>(2).
fr: Cet attribut active l’attribut « close-on-exec » pour le descripteur de fichier de l’événement créée, de telle sorte que le descripteur de fichier est automatiquement fermé par B<execve>(2). L’attribution de « close-on-exec » au moment de la création, plutôt qu’ensuite avec B<fcntl>(2), évite de potentielles situations de compétition où le thread appelant invoque B<perf_event_open>() et B<fcntl>() en même temps qu’un autre thread appelle B<fork>(2) puis B<execve>(2).

note: commit e5d1367f17ba6a6fed5fd8b74e4d5720923e0c25 type: Plain text
en: This flag activates per-container system-wide monitoring.  A container is an abstraction that isolates a set of resources for finer-grained control (CPUs, memory, etc.).  In this mode, the event is measured only if the thread running on the monitored CPU belongs to the designated container (cgroup).  The cgroup is identified by passing a file descriptor opened on its directory in the cgroupfs filesystem.  For instance, if the cgroup to monitor is called I<test>, then a file descriptor opened on I</dev/cgroup/test> (assuming cgroupfs is mounted on I</dev/cgroup>)  must be passed as the I<pid> parameter.  cgroup monitoring is available only for system-wide events and may therefore require extra permissions.
fr: Cet attribut active la surveillance par conteneur sur tout le système. Un conteneur est une abstraction qui isole un ensemble de ressources à contrôler plus finement (processeurs, mémoire, etc.) Dans ce mode, l'événement n'est mesuré que si le thread exécuté sur le processeur surveillé appartient au conteneur désigné (cgroup). Le cgroup est identifié en passant un fichier au descripteur de fichier ouvert sur son répertoire dans le système de fichiers cgroupfs. Par exemple, si le cgroup à surveiller est appelé I<test>, alors un descripteur de fichier ouvert sur I</dev/cgroup/test> (en supposant que cgroupfs est monté sur I</dev/cgroup>) doit être passé au paramètre I<pid>. La surveillance de cgroup n'est disponible que pour les événements sur tout le système et pourrait donc nécessiter des droits supplémentaires.

note: type: Plain text
en: The I<perf_event_attr> structure provides detailed configuration information for the event being created.
fr: La structure I<perf_event_attr> fournit des renseignements de configuration détaillée pour les événements en cours de création.

note: type: Plain text
en:     union {
            __u64 sample_period;    /* Period of sampling */
            __u64 sample_freq;      /* Frequency of sampling */
        };
fr:     union {
            __u64 sample_period;    /* Période d'échantillonnage */
            __u64 sample_freq;      /* Fréquence d'échantillonnage */
        };

note: type: Plain text
en:     __u64 sample_type;  /* Specifies values included in sample */
        __u64 read_format;  /* Specifies values returned in read */
fr:     __u64 sample_type;  /* Indique les valeurs inclues dans
                               l’échantillon */
        __u64 read_format;  /* Indique les valeurs renvoyées en
                               lecture */

note: type: Plain text
en:     union {
            __u32 wakeup_events;    /* wakeup every n events */
            __u32 wakeup_watermark; /* bytes before wakeup */
        };
fr:     union {
            __u32 wakeup_events;    /* réveil tous les n événements */
            __u32 wakeup_watermark; /* octets avant le réveil */
        };

note: type: Plain text
en:     __u32     bp_type;          /* breakpoint type */
fr:     __u32     bp_type;          /* type de point d'arrêt */

note: type: Plain text
en: The fields of the I<perf_event_attr> structure are described in more detail below:
fr: Les champs de la structure I<perf_event_attr> sont décrits en détail ci-dessous.

note: type: Plain text
en: This field specifies the overall event type.  It has one of the following values:
fr: Ce champ indique le type d'événement dans son ensemble. Il a l'une des valeurs suivantes.

note: type: Plain text
en: This indicates one of the "generalized" hardware events provided by the kernel.  See the I<config> field definition for more details.
fr: Cela indique un des événements matériels « généralisés » fournis par le noyau. Consultez la définition du champ I<config> pour plus de précisions.

note: type: Plain text
en: This indicates one of the software-defined events provided by the kernel (even if no hardware support is available).
fr: Cela indique un des événements logiciels fournis par le noyau (même si aucune prise en charge matérielle n'est disponible).

note: type: Plain text
en: This indicates a tracepoint provided by the kernel tracepoint infrastructure.
fr: Cela indique un point de trace fourni par l'infrastructure de point de trace du noyau.

note: type: Plain text
en: This indicates a hardware cache event.  This has a special encoding, described in the I<config> field definition.
fr: Cela indique un événement de cache matériel. Cela a un encodage particulier décrit dans la définition du champ I<config>.

note: type: Plain text
en: This indicates a "raw" implementation-specific event in the I<config> field.
fr: Cela indique un événement « brut » spécifique à l'implémentation dans le champ I<config>.

note: type: TP
en: B<PERF_TYPE_BREAKPOINT> (since Linux 2.6.33)
fr: B<PERF_TYPE_BREAKPOINT> (depuis Linux 2.6.33)

note: commit 24f1e32c60c45c89a997c73395b69c8af6f0a84e type: Plain text
en: This indicates a hardware breakpoint as provided by the CPU.  Breakpoints can be read/write accesses to an address as well as execution of an instruction address.
fr: Cela indique un point d'arrêt matériel tel que fourni par le processeur. Les points d'arrêt peuvent être des accès en lecture ou écriture sur une adresse ainsi que l'exécution d'une adresse d'instruction.

note: type: TP
en: dynamic PMU
fr: PMU dynamique

note: type: Plain text
en: The size of the I<perf_event_attr> structure for forward/backward compatibility.  Set this using I<sizeof(struct perf_event_attr)> to allow the kernel to see the struct size at the time of compilation.
fr: La taille de la structure I<perf_event_attr> pour compatibilités ascendante et descendante. Définissez-la en utilisant I<sizeof(struct perf_event_attr)> pour permettre au noyau de voir la taille de struct au moment de la compilation.

note: type: Plain text
en: This specifies which event you want, in conjunction with the I<type> field.  The I<config1> and I<config2> fields are also taken into account in cases where 64 bits is not enough to fully specify the event.  The encoding of these fields are event dependent.
fr: Cela indique l'événement voulu, en conjonction avec le champ I<type>. Les champs I<config1> et I<config2> sont aussi pris en compte dans les cas où 64 bits ne suffisent pas pour spécifier complètement l'événement. L'encodage de ces champs dépend de l'événement.

note: type: Plain text
en: There are various ways to set the I<config> field that are dependent on the value of the previously described I<type> field.  What follows are various possible settings for I<config> separated out by I<type>.
fr: Le champ I<config> peut être définit de différentes façons, en fonction de la valeur du champ I<type> précédemment décrit. Suivent les divers réglages possibles pour I<config>, séparés par I<type>.

note: type: Plain text
en: If I<type> is B<PERF_TYPE_HARDWARE>, we are measuring one of the generalized hardware CPU events.  Not all of these are available on all platforms.  Set I<config> to one of the following:
fr: Si I<type> est B<PERF_TYPE_HARDWARE>, un des événements processeur matériel généralisé est mesuré. Ils ne sont pas tous disponibles sur toutes les plateformes. Définissez I<config> à une des valeurs suivantes.

note: type: Plain text
en: Total cycles.  Be wary of what happens during CPU frequency scaling.
fr: Nombre total de cycles. Méfiez-vous de ce qui arrive lors de la variation de fréquence du processeur.

note: type: Plain text
en: Retired instructions.  Be careful, these can be affected by various issues, most notably hardware interrupt counts.
fr: Instructions retirées. Prenez garde, elles peuvent être affectées par plusieurs problèmes, en particulier les décomptes d'interruptions matérielles.

note: type: Plain text
en: Cache accesses.  Usually this indicates Last Level Cache accesses but this may vary depending on your CPU.  This may include prefetches and coherency messages; again this depends on the design of your CPU.
fr: Accès au cache. En général, cela indique les accès au cache de dernier niveau, mais cela peut dépendre du processeur. Cela pourrait inclure des messages de prefetches et de cohérence ; cela dépend toujours de la conception du processeur.

note: type: Plain text
en: Cache misses.  Usually this indicates Last Level Cache misses; this is intended to be used in conjunction with the B<PERF_COUNT_HW_CACHE_REFERENCES> event to calculate cache miss rates.
fr: Coups ratés du cache. Cela indique généralement les coups ratés du cache de dernier niveau, c'est destiné à être utilisé en conjonction avec l'événement B<PERF_COUNT_HW_CACHE_REFERENCES> pour calculer le taux de coups ratés du cache.

note: type: Plain text
en: Mispredicted branch instructions.
fr: Instructions de branchements mal prédits.

note: type: Plain text
en: Bus cycles, which can be different from total cycles.
fr: Cycles de bus, ce qui peut être différent du décompte total de cycles.

note: type: TP
en: B<PERF_COUNT_HW_STALLED_CYCLES_FRONTEND> (since Linux 3.0)
fr: B<PERF_COUNT_HW_STALLED_CYCLES_FRONTEND> (depuis Linux 3.0)

note: commit 8f62242246351b5a4bc0c1f00c0c7003edea128a type: Plain text
en: Stalled cycles during issue.
fr: Cycles bloqués pendant un problème.

note: type: TP
en: B<PERF_COUNT_HW_STALLED_CYCLES_BACKEND> (since Linux 3.0)
fr: B<PERF_COUNT_HW_STALLED_CYCLES_BACKEND> (depuis Linux 3.0)

note: commit 8f62242246351b5a4bc0c1f00c0c7003edea128a type: Plain text
en: Stalled cycles during retirement.
fr: Cycles bloqués pendant un retrait.

note: type: TP
en: B<PERF_COUNT_HW_REF_CPU_CYCLES> (since Linux 3.3)
fr: B<PERF_COUNT_HW_REF_CPU_CYCLES> (depuis Linux 3.3)

note: commit c37e17497e01fc0f5d2d6feb5723b210b3ab8890 type: Plain text
en: Total cycles; not affected by CPU frequency scaling.
fr: Nombre total de cycles ; non affecté par la variation de fréquence du processeur.

note: type: Plain text
en: If I<type> is B<PERF_TYPE_SOFTWARE>, we are measuring software events provided by the kernel.  Set I<config> to one of the following:
fr: Si I<type> est B<PERF_TYPE_SOFTWARE>, les événements logiciels fournis par le noyau sont mesurés. Définissez I<config> à une des valeurs suivantes.

note: type: Plain text
en: This reports the CPU clock, a high-resolution per-CPU timer.
fr: Cela rend compte de l'horloge du processeur, un temporisateur par processeur à haute résolution.

note: type: Plain text
en: This reports a clock count specific to the task that is running.
fr: Cela rend compte de l'horloge spécifiquement par rapport à la tâche en cours d'exécution.

note: type: Plain text
en: This reports the number of page faults.
fr: Cela rend compte du nombre d'erreurs de pagination.

note: commit e49a5bd38159dfb1928fd25b173bc9de4bbadb21 type: Plain text
en: This counts context switches.  Until Linux 2.6.34, these were all reported as user-space events, after that they are reported as happening in the kernel.
fr: Cela compte les changements de contexte. Jusqu'à Linux 2.6.34, ils étaient tous signalés comme des événements en espace utilisateur, ils sont maintenant signalés comme ayant lieu dans le noyau.

note: type: Plain text
en: This reports the number of times the process has migrated to a new CPU.
fr: Cela rend compte du nombre de fois où le processus a migré vers un nouveau processeur.

note: type: Plain text
en: This counts the number of minor page faults.  These did not require disk I/O to handle.
fr: Cela compte le nombre d'erreurs mineures de pagination. Elles n'ont pas nécessité d'entrées ou sorties du disque pour les traiter.

note: type: Plain text
en: This counts the number of major page faults.  These required disk I/O to handle.
fr: Cela compte le nombre d'erreurs majeures de pagination. Elles ont nécessité des entrées ou sorties de disque pour les traiter.

note: type: TP
en: B<PERF_COUNT_SW_ALIGNMENT_FAULTS> (since Linux 2.6.33)
fr: B<PERF_COUNT_SW_ALIGNMENT_FAULTS> (depuis Linux 2.6.33)

note: commit f7d7986060b2890fc26db6ab5203efbd33aa2497 type: Plain text
en: This counts the number of alignment faults.  These happen when unaligned memory accesses happen; the kernel can handle these but it reduces performance.  This happens only on some architectures (never on x86).
fr: Cela compte le nombre de défauts d'alignement. Ils ont lieu lors d'accès non alignés en mémoire ; le noyau peut les traiter mais cela réduit les performances. Cela n'arrive que sur certaines architectures (jamais sur x86).

note: type: TP
en: B<PERF_COUNT_SW_EMULATION_FAULTS> (since Linux 2.6.33)
fr: B<PERF_COUNT_SW_EMULATION_FAULTS> (depuis Linux 2.6.33)

note: commit f7d7986060b2890fc26db6ab5203efbd33aa2497 type: Plain text
en: This counts the number of emulation faults.  The kernel sometimes traps on unimplemented instructions and emulates them for user space.  This can negatively impact performance.
fr: Cela compte le nombre de défauts d'émulation. Le noyau intercepte parfois des instructions non implémentées et les émule pour l'espace utilisateur. Cela peut avoir des conséquences négatives sur les performances.

note: type: TP
en: B<PERF_COUNT_SW_DUMMY> (since Linux 3.12)
fr: B<PERF_COUNT_SW_DUMMY> (depuis Linux 3.12)

note: commit fa0097ee690693006ab1aea6c01ad3c851b65c77 type: Plain text
en: This is a placeholder event that counts nothing.  Informational sample record types such as mmap or comm must be associated with an active event.  This dummy event allows gathering such records without requiring a counting event.
fr: C’est un événement fictif qui ne compte rien. Les types d’enregistrement d’échantillonnage informatif comme mmap ou comm doivent être associés à un événement actif. Cet événement factice permet de récupérer ce genre d’enregistrements sans nécessiter d’événement de comptage.

note: type: Plain text
en: If I<type> is B<PERF_TYPE_TRACEPOINT>, then we are measuring kernel tracepoints.  The value to use in I<config> can be obtained from under debugfs I<tracing/events/*/*/id> if ftrace is enabled in the kernel.
fr: Si I<type> est B<PERF_TYPE_TRACEPOINT>, alors les points de trace du noyau sont mesurés. La valeur à utiliser dans I<config> peut être obtenue depuis I<tracing/events/*/*/id> de debugfs si ftrace est activé dans le noyau.

note: type: Plain text
en: If I<type> is B<PERF_TYPE_HW_CACHE>, then we are measuring a hardware CPU cache event.  To calculate the appropriate I<config> value use the following equation:
fr: Si I<type> est B<PERF_TYPE_HW_CACHE>, alors un événement de cache du processeur matériel est mesuré. Utilisez l'équation suivante pour calculer la valeur I<config> appropriée.

note: type: Plain text
en: where I<perf_hw_cache_id> is one of:
fr: où I<perf_hw_cache_id> est parmi :

note: type: Plain text
en: for measuring Level 1 Data Cache
fr: pour mesurer le cache de données de niveau 1 ;

note: type: Plain text
en: for measuring Level 1 Instruction Cache
fr: pour mesurer le cache d'instructions de niveau 1 ;

note: type: Plain text
en: for measuring Last-Level Cache
fr: pour mesurer le cache de dernier niveau ;

note: type: Plain text
en: for measuring the Data TLB
fr: pour mesurer les données TLB ;

note: type: Plain text
en: for measuring the Instruction TLB
fr: pour mesurer les instructions TLB ;

note: type: Plain text
en: for measuring the branch prediction unit
fr: pour mesurer l'unité de prédiction de branchement ;

note: commit 89d6c0b5bdbb1927775584dcf532d98b3efe1477 type: Plain text
en: for measuring local memory accesses
fr: pour mesurer les accès à la mémoire locale ;

note: type: Plain text
en: for read accesses
fr: pour les accès en lecture ;

note: type: Plain text
en: for write accesses
fr: pour les accès en écriture ;

note: type: Plain text
en: for prefetch accesses
fr: pour les accès prefetch ;

note: type: Plain text
en: to measure accesses
fr: pour mesurer les accès ;

note: type: Plain text
en: to measure misses
fr: pour mesurer les coups ratés.

note: type: Plain text
en: If I<type> is B<PERF_TYPE_RAW>, then a custom "raw" I<config> value is needed.  Most CPUs support events that are not covered by the "generalized" events.  These are implementation defined; see your CPU manual (for example the Intel Volume 3B documentation or the AMD BIOS and Kernel Developer Guide).  The libpfm4 library can be used to translate from the name in the architectural manuals to the raw hex value B<perf_event_open>()  expects in this field.
fr: Si I<type> est B<PERF_TYPE_RAW>, alors une valeur I<config> « brute » personnalisée est nécessaire. La plupart des processeurs gèrent les événements qui ne sont pas couverts par les événements « généralisés ». Ceux-ci sont définis par l'implémentation ; consultez le manuel du processeur (par exemple la documentation Intel Volume 3B ou le guide du développeur de BIOS et noyau AMD). La bibliothèque libpfm4 peut être utilisée pour traduire le nom, dans les manuels architecturaux, en valeur hexadécimale brute que B<perf_event_open>() attend dans ce champ.

note: type: Plain text
en: If I<type> is B<PERF_TYPE_BREAKPOINT>, then leave I<config> set to zero.  Its parameters are set in other places.
fr: Si I<type> est B<PERF_TYPE_BREAKPOINT>, alors laissez I<config> défini à zéro. Ses paramètres sont définis ailleurs.

note: type: Plain text
en: I<sample_freq> can be used if you wish to use frequency rather than period.  In this case, you set the I<freq> flag.  The kernel will adjust the sampling period to try and achieve the desired rate.  The rate of adjustment is a timer tick.
fr: I<sample_freq> permet d'utiliser la fréquence au lieu de la période. Dans ce cas, l'attribut I<freq> doit être défini. Le noyau ajustera la période d'échantillonnage pour essayer d'atteindre le taux voulu. Le taux d'ajustement est un tic d'horloge.

note: type: Plain text
en: The various bits in this field specify which values to include in the sample.  They will be recorded in a ring-buffer, which is available to user space using B<mmap>(2).  The order in which the values are saved in the sample are documented in the MMAP Layout subsection below; it is not the I<enum perf_event_sample_format> order.
fr: Les divers bits de ce champ indiquent les valeurs à inclure dans l'échantillon. Elles seront enregistrées dans un tampon circulaire, disponible en espace utilisateur avec B<mmap>(2). L'ordre de sauvegarde des valeurs dans l'échantillon est documenté dans la sous-section B<Disposition MMAP> ci-dessous ; ce n'est pas l'ordre I<enum perf_event_sample_format>.

note: type: Plain text
en: Records instruction pointer.
fr: Enregistrement de pointeur d'instruction.

note: type: Plain text
en: Records the process and thread IDs.
fr: Enregistrement des identifiants de processus et de thread.

note: type: Plain text
en: Records a timestamp.
fr: Enregistrement d'un horodatage.

note: type: Plain text
en: Records an address, if applicable.
fr: Enregistrement d'une adresse, si applicable.

note: type: Plain text
en: Record counter values for all events in a group, not just the group leader.
fr: Enregistrement des valeurs de décompte de tous les événements d'un groupe, pas seulement du leader de groupe.

note: type: Plain text
en: Records the callchain (stack backtrace).
fr: Enregistrement de l'appel en chaîne (pile de backtrace).

note: type: Plain text
en: Records a unique ID for the opened event's group leader.
fr: Enregistrement d'un identifiant unique pour le leader de groupe d'événements ouvert.

note: type: Plain text
en: Records CPU number.
fr: Enregistrement de numéro de processeur.

note: type: Plain text
en: Records the current sampling period.
fr: Enregistrement de la période d'échantillonnage actuelle.

note: type: Plain text
en: Records a unique ID for the opened event.  Unlike B<PERF_SAMPLE_ID> the actual ID is returned, not the group leader.  This ID is the same as the one returned by B<PERF_FORMAT_ID>.
fr: Enregistrement d'un identifiant unique pour l'événement ouvert. Contrairement à B<PERF_SAMPLE_ID>, le véritable identifiant est renvoyé, pas celui du leader de groupe. Cet identifiant est le même que celui renvoyé par B<PERF_FORMAT_ID>.

note: type: Plain text
en: Records additional data, if applicable.  Usually returned by tracepoint events.
fr: Enregistrement de données supplémentaires, si applicable. Normalement renvoyées par les événements de point de trace.

note: type: TP
en: B<PERF_SAMPLE_BRANCH_STACK> (since Linux 3.4)
fr: B<PERF_SAMPLE_BRANCH_STACK> (depuis Linux 3.4)

note: commit bce38cd53e5ddba9cb6d708c4ef3d04a4016ec7e type: Plain text
en: This provides a record of recent branches, as provided by CPU branch sampling hardware (such as Intel Last Branch Record).  Not all hardware supports this feature.
fr: Cela fournit un enregistrement des derniers branchements, tels que fournis par le matériel d’échantillonnage de branchement processeur (comme le LBR – Last Branch Record – d’Intel). Les matériels ne prennent pas tous en charge cette fonctionnalité.

note: type: Plain text
en: See the I<branch_sample_type> field for how to filter which branches are reported.
fr: Consultez le champ I<branch_sample_type> pour la façon de filtrer les branchements signalés.

note: type: TP
en: B<PERF_SAMPLE_REGS_USER> (since Linux 3.7)
fr: B<PERF_SAMPLE_REGS_USER> (depuis Linux 3.7)

note: commit 4018994f3d8785275ef0e7391b75c3462c029e56 type: Plain text
en: Records the current user-level CPU register state (the values in the process before the kernel was called).
fr: Enregistrement de l’état actuel du registre processeur au niveau utilisateur (les valeurs dans le processus avant d’appeler le noyau).

note: type: TP
en: B<PERF_SAMPLE_STACK_USER> (since Linux 3.7)
fr: B<PERF_SAMPLE_STACK_USER> (depuis Linux 3.7)

note: commit c5ebcedb566ef17bda7b02686e0d658a7bb42ee7 type: Plain text
en: Records the user level stack, allowing stack unwinding.
fr: Enregistrement de la pile au niveau utilisateur, permettant le défilement de la pile.

note: type: TP
en: B<PERF_SAMPLE_WEIGHT> (since Linux 3.10)
fr: B<PERF_SAMPLE_WEIGHT> (depuis Linux 3.10)

note: commit c3feedf2aaf9ac8bad6f19f5d21e4ee0b4b87e9c type: Plain text
en: Records a hardware provided weight value that expresses how costly the sampled event was.  This allows the hardware to highlight expensive events in a profile.
fr: Enregistrement d’une valeur de poids fournie par le matériel qui exprime le coût de l’événement d’échantillonnage. Cela permet au matériel de mettre en valeur les événements coûteux dans un profil.

note: type: TP
en: B<PERF_SAMPLE_DATA_SRC> (since Linux 3.10)
fr: B<PERF_SAMPLE_DATA_SRC> (depuis Linux 3.10)

note: type: TP
en: B<PERF_SAMPLE_IDENTIFIER> (since Linux 3.12)
fr: B<PERF_SAMPLE_IDENTIFIER> (depuis Linux 3.12)

note: commit ff3d527cebc1fa3707c617bfe9e74f53fcfb0955 type: Plain text
en: Places the B<SAMPLE_ID> value in a fixed position in the record, either at the beginning (for sample events) or at the end (if a non-sample event).
fr: Placement de la valeur B<SAMPLE_ID> à un endroit fixe de l’enregistrement, soit au début (pour les événements d’échantillonnage), soit à la fin (si ce n’est pas un événement d’échantillonnage).

note: type: Plain text
en: This was necessary because a sample stream may have records from various different event sources with different I<sample_type> settings.  Parsing the event stream properly was not possible because the format of the record was needed to find B<SAMPLE_ID>, but the format could not be found without knowing what event the sample belonged to (causing a circular dependency).
fr: C’était nécessaire parce qu’un flux d’échantillonnage pourrait avoir des enregistrements provenant de différentes sources d’événements avec des réglages de I<sample_type> différents. L’analyse correcte du flux d’événements n’était pas possible parce que le format de l’enregistrement était nécessaire pour trouver B<SAMPLE_ID>, mais le format ne pouvait pas être trouvé sans savoir à quel événement l’échantillonnage appartenait (provoquant une dépendance circulaire).

note: commit fdfbbd07e91f8fe387140776f3fd94605f0c89e5 type: Plain text
en: Records reasons for transactional memory abort events (for example, from Intel TSX transactional memory support).
fr: Enregistrement des raisons pour les événements d’abandon de mémoire transactionnelle (venant par exemple de la prise en charge de mémoire transactionnelle TSX Intel).

note: type: Plain text
en: The I<precise_ip> setting must be greater than 0 and a transactional memory abort event must be measured or no values will be recorded.  Also note that some perf_event measurements, such as sampled cycle counting, may cause extraneous aborts (by causing an interrupt during a transaction).
fr: Le réglage I<precise_ip> doit être positif et un événement d’abandon de mémoire transactionnelle doit être mesuré sinon aucune valeur ne sera enregistrée. Remarquez également que certaines mesures perf_event, comme le comptage de cycles d’échantillonnage, peuvent provoquer des abandons supplémentaires (en provoquant une interruption lors d’une transaction).

note: type: Plain text
en: This field specifies the format of the data returned by B<read>(2)  on a B<perf_event_open>()  file descriptor.
fr: Ce champ indique le format des données renvoyées par B<read>(2) sur un descripteur de fichier B<perf_event_open>().

note: type: Plain text
en: Adds the 64-bit I<time_enabled> field.  This can be used to calculate estimated totals if the PMU is overcommitted and multiplexing is happening.
fr: Ajout du champ I<time_enabled> de 64 bits. Cela peut servir à calculer les totaux estimés si la PMU est surutilisée et qu'il y a multiplexage.

note: type: Plain text
en: Adds the 64-bit I<time_running> field.  This can be used to calculate estimated totals if the PMU is overcommitted and multiplexing is happening.
fr: Ajout du champ I<time_running> de 64 bits. Cela peut servir pour calculer les totaux estimés si la PMU est surutilisée et qu'il y a multiplexage.

note: type: Plain text
en: Adds a 64-bit unique value that corresponds to the event group.
fr: Ajout d'une valeur unique de 64 bits qui correspond au groupe d’événements.

note: type: Plain text
en: Allows all counter values in an event group to be read with one read.
fr: Permettre à toutes les valeurs de décompte d'un groupe d'événements d'être lues avec une lecture.

note: type: Plain text
en: The I<disabled> bit specifies whether the counter starts out disabled or enabled.  If disabled, the event can later be enabled by B<ioctl>(2), B<prctl>(2), or I<enable_on_exec>.
fr: Le bit I<disabled> indique si le compteur commence désactivé ou activé. Si désactivé, l'événement peut être activé plus tard par B<ioctl>(2), B<prctl>(2) ou I<enable_on_exec>.

note: type: Plain text
en: When creating an event group, typically the group leader is initialized with I<disabled> set to 1 and any child events are initialized with I<disabled> set to 0.  Despite I<disabled> being 0, the child events will not start until the group leader is enabled.
fr: Lors de la création d’un groupe d’événements, le leader de groupe est typiquement initialisé avec I<disabled> défini à 1 et tous les événements fils sont initialisés avec I<disabled> défini à 0. Bien que I<disabled> soit 0, les événements fils ne démarrent pas avant que le leader de groupe ne soit activé.

note: type: Plain text
en: The I<inherit> bit specifies that this counter should count events of child tasks as well as the task specified.  This applies only to new children, not to any existing children at the time the counter is created (nor to any new children of existing children).
fr: Le bit I<inherit> indique que le compteur devrait compter les événements des tâches filles comme les tâches indiquées. Cela ne s'applique qu'aux nouvelles filles, pas à celles existantes au moment où le compteur est créé (ni aux nouvelles filles des filles existantes).

note: type: Plain text
en: The I<pinned> bit specifies that the counter should always be on the CPU if at all possible.  It applies only to hardware counters and only to group leaders.  If a pinned counter cannot be put onto the CPU (e.g., because there are not enough hardware counters or because of a conflict with some other event), then the counter goes into an 'error' state, where reads return end-of-file (i.e., B<read>(2)  returns 0) until the counter is subsequently enabled or disabled.
fr: Le bit I<pinned> indique que le compteur devrait toujours être sur le processeur si c'est possible. Cela ne s'applique qu'aux compteurs matériels et seulement aux leaders de groupe. Si un compteur épinglé ne peut pas être mis dans le processeur (par exemple s'il n'y a pas assez de compteurs matériels ou en cas de confit avec n'importe quel autre événement), alors le compteur arrive en état d'« erreur », où les lectures renvoient une fin de fichier (c'est-à-dire que B<read>(2) renvoie 0) jusqu'à ce que le compteur soit ensuite activé ou désactivé.

note: type: Plain text
en: The I<exclusive> bit specifies that when this counter's group is on the CPU, it should be the only group using the CPU's counters.  In the future this may allow monitoring programs to support PMU features that need to run alone so that they do not disrupt other hardware counters.
fr: Le bit I<exclusive> indique que si ce groupe du compteur est sur le processeur, il devrait être le seul groupe utilisant les compteurs du processeur. Cela pourrait permettre à l'avenir de surveiller des programmes pour gérer les fonctionnalités PMU qui doivent fonctionner seules, sans perturber d'autres compteurs matériels.

note: type: Plain text
en: Note that many unexpected situations may prevent events with the I<exclusive> bit set from ever running.  This includes any users running a system-wide measurement as well as any kernel use of the performance counters (including the commonly enabled NMI Watchdog Timer interface).
fr: Remarquez que de nombreuses situations non attendues pourraient empêcher les événements avec le bit I<exclusive> défini de démarrer. Cela concerne tous les utilisateurs exécutant des mesures au niveau du système ainsi que toutes les utilisations par le noyau des compteurs de performance (y compris l’interface NMI Watchdog Timer souvent activée).

note: type: Plain text
en: If this bit is set, the count excludes events that happen in user space.
fr: Si ce bit est défini, le décompte exclut les événements qui arrivent dans l'espace utilisateur.

note: type: Plain text
en: If this bit is set, the count excludes events that happen in the hypervisor.  This is mainly for PMUs that have built-in support for handling this (such as POWER).  Extra support is needed for handling hypervisor measurements on most machines.
fr: Si ce bit est défini, le décompte exclut les événements qui arrivent dans l'hyperviseur. C'est surtout pour les PMU avec prise en charge intégrée de leur traitement (comme POWER). Une prise en charge supplémentaire est nécessaire pour traiter les mesures d'hyperviseur sur la plupart des machines.

note: type: Plain text
en: The I<mmap> bit enables generation of B<PERF_RECORD_MMAP> samples for every B<mmap>(2)  call that has B<PROT_EXEC> set.  This allows tools to notice new executable code being mapped into a program (dynamic shared libraries for example)  so that addresses can be mapped back to the original code.
fr: Le bit I<mmap> active la génération des échantillons B<PERF_RECORD_MMAP> pour tous les appels B<mmap>(2) qui ont B<PROT_EXEC> défini. Cela permet aux outils de remarquer le nouveau code executable en train d’être associé dans un programme (les bibliothèques partagées dynamiques par exemple) de telle sorte que les adresses peuvent être réassociées au code d’origine.

note: type: Plain text
en: If this bit is set, then I<sample_frequency> not I<sample_period> is used when setting up the sampling interval.
fr: Si ce bit est activé, alors I<sample_frequency> est utilisé au lieu de I<sample_period> lors du réglage de l'intervalle d'échantillonnage.

note: type: Plain text
en: This bit enables saving of event counts on context switch for inherited tasks.  This is meaningful only if the I<inherit> field is set.
fr: Ce bit active la sauvegarde des décomptes d'événements lors du changement de contexte pour les tâches héritées. Cela n'a de sens que si le champ I<inherit> est défini.

note: type: Plain text
en: If this bit is set, a counter is automatically enabled after a call to B<exec>(2).
fr: Si ce bit est défini, un compteur est automatiquement activé après un appel d'B<exec>(2).

note: type: Plain text
en: If this bit is set, then fork/exit notifications are included in the ring buffer.
fr: Si ce bit est défini, alors les notifications de création de fils et de fin sont inclues au tampon circulaire.

note: type: TP
en: I<precise_ip> (since Linux 2.6.35)
fr: I<precise_ip> (depuis Linux 2.6.35)

note: commit ab608344bcbde4f55ec4cd911b686b0ce3eae076 type: Plain text
en: This controls the amount of skid.  Skid is how many instructions execute between an event of interest happening and the kernel being able to stop and record the event.  Smaller skid is better and allows more accurate reporting of which events correspond to which instructions, but hardware is often limited with how small this can be.
fr: Cela contrôle la quantité de dérapage. Le dérapage est le nombre d'instructions qui s'exécutent entre l'arrivée d'un événement d'intérêt et la possibilité du noyau de s'arrêter pour enregistrer l'événement. Les plus petits dérapages sont meilleurs et permettent d'associer plus précisément les événements correspondant aux instructions, mais le matériel est souvent limité par leur taille.

note: type: Plain text
en: B<SAMPLE_IP> can have arbitrary skid.
fr: B<SAMPLE_IP> peut avoir un dérapage arbitraire ;

note: type: Plain text
en: B<SAMPLE_IP> must have constant skid.
fr: B<SAMPLE_IP> doit avoir un dérapage constant ;

note: type: Plain text
en: B<SAMPLE_IP> requested to have 0 skid.
fr: B<SAMPLE_IP> a demandé à avoir dérapage nul ;

note: type: TP
en: I<mmap_data> (since Linux 2.6.36)
fr: I<mmap_data> (depuis Linux 2.6.36)

note: type: TP
en: I<sample_id_all> (since Linux 2.6.38)
fr: I<sample_id_all> (depuis Linux 2.6.38)

note: commit c980d1091810df13f21aabbce545fd98f545bbf7 type: Plain text
en: If set, then TID, TIME, ID, STREAM_ID, and CPU can additionally be included in non-B<PERF_RECORD_SAMPLE>s if the corresponding I<sample_type> is selected.
fr: Si défini, alors TID, TIME, ID, STREAM_ID et CPU peuvent de plus être inclus dans les non B<PERF_RECORD_SAMPLE> si le I<sample_type> correspondant est sélectionné.

note: type: Plain text
en: If B<PERF_SAMPLE_IDENTIFIER> is specified, then an additional ID value is included as the last value to ease parsing the record stream.  This may lead to the I<id> value appearing twice.
fr: Si B<PERF_SAMPLE_IDENTIFIER> est indiqué, alors une valeur d’identifiant supplémentaire est incluse en dernière valeur pour faciliter l’analyse du flux d’enregistrement. Cela peut avoir pour conséquence de voir apparaître la valeur I<id> deux fois.

note: type: Plain text
en: The layout is described by this pseudo-structure:
fr: La disposition est décrite par cette pseudostructure :

note: type: TP
en: I<exclude_host> (since Linux 3.2)
fr: I<exclude_host> (depuis Linux 3.2)

note: type: TP
en: I<exclude_guest> (since Linux 3.2)
fr: I<exclude_guest> (depuis Linux 3.2)

note: type: TP
en: I<exclude_callchain_kernel> (since Linux 3.7)
fr: I<exclude_callchain_kernel> (depuis Linux 3.7)

note: commit d077526485d5c9b12fe85d0b2b3b7041e6bc5f91 type: Plain text
en: Do not include kernel callchains.
fr: Ne pas inclure les appels en chaîne du noyau.

note: type: TP
en: I<exclude_callchain_user> (since Linux 3.7)
fr: I<exclude_callchain_user> (depuis Linux 3.7)

note: commit d077526485d5c9b12fe85d0b2b3b7041e6bc5f91 type: Plain text
en: Do not include user callchains.
fr: Ne pas inclure les appels en chaîne d'utilisateur.

note: type: TP
en: I<bp_type> (since Linux 2.6.33)
fr: I<bp_type> (depuis Linux 2.6.33)

note: commit 24f1e32c60c45c89a997c73395b69c8af6f0a84e type: Plain text
en: This chooses the breakpoint type.  It is one of:
fr: Cela choisi le type de point d'arrêt. Il est parmi :

note: type: Plain text
en: No breakpoint.
fr: pas de point d'arrêt ;

note: type: Plain text
en: Count when we read the memory location.
fr: compte lors de la lecture de l'emplacement mémoire ;

note: type: Plain text
en: Count when we write the memory location.
fr: compte lors de l'écriture à l'emplacement mémoire ;

note: type: Plain text
en: Count when we read or write the memory location.
fr: compte lors de la lecture ou l'écriture à l'emplacement mémoire ;

note: type: Plain text
en: Count when we execute code at the memory location.
fr: compte lors de l'exécution de code à l'emplacement mémoire.

note: type: Plain text
en: The values can be combined via a bitwise or, but the combination of B<HW_BREAKPOINT_R> or B<HW_BREAKPOINT_W> with B<HW_BREAKPOINT_X> is not allowed.
fr: Les valeurs peuvent être combinées à l'aide d'un OU binaire, mais les combinaisons de B<HW_BREAKPOINT_R> ou B<HW_BREAKPOINT_W> avec B<HW_BREAKPOINT_X> ne sont pas permises.

note: type: TP
en: I<bp_addr> (since Linux 2.6.33)
fr: I<bp_addr> (depuis Linux 2.6.33)

note: type: TP
en: I<config1> (since Linux 2.6.39)
fr: I<config1> (depuis Linux 2.6.39)

note: type: TP
en: I<bp_len> (since Linux 2.6.33)
fr: I<bp_len> (depuis Linux 2.6.33)

note: type: TP
en: I<config2> (since Linux 2.6.39)
fr: I<config2> (depuis Linux 2.6.39)

note: commit a7e3ed1e470116c9d12c2f778431a481a6be8ab6 type: Plain text
en: I<config2> is a further extension of the I<config1> field.
fr: I<config2> est une extension supplémentaire du champ I<config1>.

note: type: TP
en: I<branch_sample_type> (since Linux 3.4)
fr: I<branch_sample_type> (depuis Linux 3.4)

note: commit bce38cd53e5ddba9cb6d708c4ef3d04a4016ec7e type: Plain text
en: If B<PERF_SAMPLE_BRANCH_STACK> is enabled, then this specifies what branches to include in the branch record.
fr: Si B<PERF_SAMPLE_BRANCH_STACK> est activé, alors cela indique les branchements à inclure dans l’enregistrement de branchements.

note: type: Plain text
en: Branch target is in user space.
fr: La cible de branchement est dans l'espace utilisateur.

note: type: Plain text
en: Branch target is in kernel space.
fr: La cible de branchement est dans l'espace du noyau.

note: type: Plain text
en: Branch target is in hypervisor.
fr: La cible de branchement est dans l'hyperviseur.

note: type: Plain text
en: A convenience value that is the three preceding values ORed together.
fr: Une valeur pratique qui correspond aux trois valeurs précédentes combinées avec un OU.

note: type: Plain text
en: In addition to the privilege value, at least one or more of the following bits must be set.
fr: En plus de la valeur de droits, au moins un des bits suivants doit être défini.

note: type: Plain text
en: Any branch type.
fr: N'importe quel type de branchement.

note: type: Plain text
en: Indirect calls.
fr: Appels indirects.

note: type: Plain text
en: Any return branch.
fr: N'importe quel branchement de retour.

note: type: TP
en: B<PERF_SAMPLE_BRANCH_ABORT_TX> (since Linux 3.11)
fr: B<PERF_SAMPLE_BRANCH_ABORT_TX> (depuis Linux 3.11)

note: commit 135c5612c460f89657c4698fe2ea753f6f667963 type: Plain text
en: Transactional memory aborts.
fr: Abandons de mémoire transactionnelle.

note: type: TP
en: B<PERF_SAMPLE_BRANCH_IN_TX> (since Linux 3.11)
fr: B<PERF_SAMPLE_BRANCH_IN_TX> (depuis Linux 3.11)

note: commit 135c5612c460f89657c4698fe2ea753f6f667963 type: Plain text
en: Branch in transactional memory transaction.
fr: Branchement dans une transaction de mémoire transactionnelle.

note: type: TP
en: B<PERF_SAMPLE_BRANCH_NO_TX> (since Linux 3.11)
fr: B<PERF_SAMPLE_BRANCH_NO_TX> (depuis Linux 3.11)

note: type: TP
en: I<sample_regs_user> (since Linux 3.7)
fr: I<sample_regs_user> (depuis Linux 3.7)

note: type: TP
en: I<sample_stack_user> (since Linux 3.7)
fr: I<sample_stack_user> (depuis Linux 3.7)

note: commit c5ebcedb566ef17bda7b02686e0d658a7bb42ee7 type: Plain text
en: This defines the size of the user stack to dump if B<PERF_SAMPLE_STACK_USER> is specified.
fr: Cela définit la taille de la pile utilisateur à renvoyer si B<PERF_SAMPLE_STACK_USER> est indiqué.

note: type: SS
en: Reading results
fr: Lecture des résultats

note: type: Plain text
en: Once a B<perf_event_open>()  file descriptor has been opened, the values of the events can be read from the file descriptor.  The values that are there are specified by the I<read_format> field in the I<attr> structure at open time.
fr: Une fois qu'un descripteur de fichier B<perf_event_open>() a été ouvert, les valeurs de l'événement peuvent être lues depuis le descripteur de fichier. Les valeurs présentes sont indiquées par le champ I<read_format> de la structure I<attr> au moment de l'ouverture.

note: type: Plain text
en: Here is the layout of the data returned by a read:
fr: Voici la disposition des données renvoyées par une lecture.

note: type: Plain text
en: If B<PERF_FORMAT_GROUP> was specified to allow reading all events in a group at once:
fr: Si B<PERF_FORMAT_GROUP> a été indiqué pour permettre de lire tous les événements d'un groupe en une fois :

note: type: Plain text
en: If B<PERF_FORMAT_GROUP> was I<not> specified:
fr: Si B<PERF_FORMAT_GROUP> n'a I<pas> été indiqué :

note: type: Plain text
en: struct read_format {
        u64 value;         /* The value of the event */
        u64 time_enabled;  /* if PERF_FORMAT_TOTAL_TIME_ENABLED */
        u64 time_running;  /* if PERF_FORMAT_TOTAL_TIME_RUNNING */
        u64 id;            /* if PERF_FORMAT_ID */
    };
fr: struct read_format {
        u64 value;         /* La valeur de l'événement */
        u64 time_enabled;  /* si PERF_FORMAT_TOTAL_TIME_ENABLED */
        u64 time_running;  /* si PERF_FORMAT_TOTAL_TIME_RUNNING */
        u64 id;            /* si PERF_FORMAT_ID */
    };

note: type: Plain text
en: The values read are as follows:
fr: Les valeurs lues sont les suivantes.

note: type: Plain text
en: An unsigned 64-bit value containing the counter result.
fr: Une valeur positive sur 64 bits contenant le résultat du compteur.

note: type: SS
en: MMAP layout
fr: Disposition MMAP

note: type: Plain text
en: When using B<perf_event_open>()  in sampled mode, asynchronous events (like counter overflow or B<PROT_EXEC> mmap tracking)  are logged into a ring-buffer.  This ring-buffer is created and accessed through B<mmap>(2).
fr: En utilisant B<perf_event_open>() en mode d'échantillonnage, les événements asynchrones (comme un dépassement de compteur ou un suivi mmap B<PROT_EXEC>) sont journalisés dans un tampon circulaire. Ce tampon circulaire est créé et accédé à l'aide de B<mmap>(2).

note: type: Plain text
en: The mmap size should be 1+2^n pages, where the first page is a metadata page (I<struct perf_event_mmap_page>)  that contains various bits of information such as where the ring-buffer head is.
fr: La taille de mmap devrait être 1+2^n pages, où la première page est une page de métadonnées (I<struct perf_event_mmap_page>) qui contient plusieurs informations comme l'emplacement de la tête du tampon circulaire.

note: type: Plain text
en: The structure of the first metadata mmap page is as follows:
fr: La structure de la première page mmap de métadonnées est la suivante :

note: type: Plain text
en: The following list describes the fields in the I<perf_event_mmap_page> structure in more detail:
fr: La liste suivante décrit les champs de la structure I<perf_event_mmap_page> plus précisément.

note: type: Plain text
en: Version number of this structure.
fr: Numéro de version de cette structure.

note: type: Plain text
en: The lowest version this is compatible with.
fr: La plus petite version avec laquelle elle est compatible.

note: type: Plain text
en: A seqlock for synchronization.
fr: Un seqlock pour la synchronisation.

note: type: Plain text
en: A unique hardware counter identifier.
fr: Un identifiant unique de compteur matériel.

note: type: Plain text
en: When using rdpmc for reads this offset value must be added to the one returned by rdpmc to get the current total event count.
fr: Quand l’instruction rdpmc est utilisée pour lire, cette valeur de position doit être ajoutée à celle renvoyée par rdpmc pour obtenir le décompte total actuel d’événements.

note: type: Plain text
en: Time the event was active.
fr: Temps d'activité de l'événement.

note: type: Plain text
en: Time the event was running.
fr: Temps d'exécution de l'événement.

note: type: TP
en: I<cap_usr_time> / I<cap_usr_rdpmc> / I<cap_bit0> (since Linux 3.4)
fr: I<cap_usr_time> / I<cap_usr_rdpmc> / I<cap_bit0> (depuis Linux 3.4)

note: commit c7206205d00ab375839bd6c7ddb247d600693c09 type: Plain text
en: There was a bug in the definition of I<cap_usr_time> and I<cap_usr_rdpmc> from Linux 3.4 until Linux 3.11.  Both bits were defined to point to the same location, so it was impossible to know if I<cap_usr_time> or I<cap_usr_rdpmc> were actually set.
fr: Un bogue existait dans la définition de I<cap_usr_time> et I<cap_usr_rdpmc> de Linux 3.4 à Linux 3.11. Les deux bits étaient définis pour pointer vers le même endroit, il était donc impossible de savoir si I<cap_usr_time> ou I<cap_usr_rdpmc> étaient vraiment définis.

note: type: TP
en: I<cap_bit0_is_deprecated> (since Linux 3.12)
fr: I<cap_bit0_is_deprecated> (depuis Linux 3.12)

note: commit fa7315871046b9a4c48627905691dbde57e51033 type: Plain text
en: If set, this bit indicates that the kernel supports the properly separated I<cap_user_time> and I<cap_user_rdpmc> bits.
fr: Si défini, ce bit indique que le noyau est capable de gérer correctement les bits I<cap_user_time> et I<cap_user_rdpmc> séparés.

note: type: Plain text
en: If not-set, it indicates an older kernel where I<cap_usr_time> and I<cap_usr_rdpmc> map to the same bit and thus both features should be used with caution.
fr: Si non, cela indique qu’il s’agit d’un ancien noyau où I<cap_usr_time> et I<cap_usr_rdpmc> pointent vers le même bit et donc que ces deux fonctionnalités devrait être utilisée avec prudence.

note: type: TP
en: I<cap_user_rdpmc> (since Linux 3.12)
fr: I<cap_usr_rdpmc> (depuis Linux 3.12)

note: commit fa7315871046b9a4c48627905691dbde57e51033 type: Plain text
en: If the hardware supports user-space read of performance counters without syscall (this is the "rdpmc" instruction on x86), then the following code can be used to do a read:
fr: Si le matériel permet la lecture en espace utilisateur des compteurs de performance sans appel système (c'est l'instruction « rdpmc » sur x86), alors le code suivant peut être utilisé pour faire une lecture :

note: commit fa7315871046b9a4c48627905691dbde57e51033 type: Plain text
en: This bit indicates the hardware has a constant, nonstop timestamp counter (TSC on x86).
fr: Ce bit indique que le matériel a un compteur temporel sans arrêt, constant (TSC sur x86).

note: type: TP
en: I<cap_user_time_zero> (since Linux 3.12)
fr: I<cap_usr_time_zero> (depuis Linux 3.12)

note: commit fa7315871046b9a4c48627905691dbde57e51033 type: Plain text
en: Indicates the presence of I<time_zero> which allows mapping timestamp values to the hardware clock.
fr: Indique la présence de I<time_zero> qui permet d’associer les valeurs d’horodatage à l’horloge matérielle.

note: type: Plain text
en: If I<cap_usr_rdpmc>, this field provides the bit-width of the value read using the rdpmc or equivalent instruction.  This can be used to sign extend the result like:
fr: Si I<cap_usr_rdpmc>, ce champ fournit la taille en bit de la valeur lue en utilisant l'instruction rdpmc ou équivalente. Cela permet d'étendre avec signe le résultat comme ceci :

note: type: Plain text
en: pmc E<lt>E<lt>= 64 - pmc_width;
    pmc E<gt>E<gt>= 64 - pmc_width; // signed shift right
    count += pmc;
fr: pmc E<lt>E<lt>= 64 - pmc_width;
    pmc E<gt>E<gt>= 64 - pmc_width; // déplacement du signe à droite
    count += pmc;

note: type: Plain text
en: Where I<time_offset>, I<time_mult>, I<time_shift>, and I<cyc> are read in the seqcount loop described above.  This delta can then be added to enabled and possible running (if idx), improving the scaling:
fr: Où I<time_offset>, I<time_mult>, I<time_shift> et I<cyc> sont lus dans la boucle seqcount décrite ci-dessus. Cette différence peut être ajoutée à I<enabled> et éventuellement I<running> (si idx), pour améliorer l'échelle :

note: type: TP
en: I<time_zero> (since Linux 3.12)
fr: I<time_zero> (depuis Linux 3.12)

note: type: Plain text
en: If I<cap_usr_time_zero> is set, then the hardware clock (the TSC timestamp counter on x86)  can be calculated from the I<time_zero>, I<time_mult>, and I<time_shift> values:
fr: Si I<cap_usr_time_zero> est défini, alors horloge matérielle (le compteur temporel TSC sur x86) peut être calculé à partir des valeurs I<time_zero>, I<time_mult> et I<time_shift> :

note: type: Plain text
en: And vice versa:
fr: Et vice versa :

note: type: Plain text
en: This points to the head of the data section.  The value continuously increases, it does not wrap.  The value needs to be manually wrapped by the size of the mmap buffer before accessing the samples.
fr: Cela pointe vers la tête de la section de données. La valeur augmente continuellement, elle n'est pas coupée. Vous devrez couper vous-même la valeur à la taille du tampon mmap avant d'accéder aux échantillons.

note: type: Plain text
en: On SMP-capable platforms, after reading the I<data_head> value, user space should issue an rmb().
fr: Sur les plateformes compatibles SMP, après la lecture de la valeur I<data_head>, l'espace utilisateur devrait renvoyer un rmb().

note: type: Plain text
en: When the mapping is B<PROT_WRITE>, the I<data_tail> value should be written by user space to reflect the last read data.  In this case, the kernel will not overwrite unread data.
fr: Quand l'association est B<PROT_WRITE>, la valeur I<data_tail> devrait être écrite par l'espace utilisateur pour refléter les dernières données lues. Dans ce cas, le noyau n'écrasera pas les données non lues.

note: type: Plain text
en: The following 2^n ring-buffer pages have the layout described below.
fr: Les 2^n pages suivantes du tampon circulaire ont la disposition décrite ci-dessous.

note: type: Plain text
en: The mmap values start with a header:
fr: Les valeurs mmap commencent par un en-tête :

note: type: Plain text
en: Below, we describe the I<perf_event_header> fields in more detail.  For ease of reading, the fields with shorter descriptions are presented first.
fr: Les champs I<perf_event_header> sont décrits plus précisément ci-dessous. Par commodité de lecture, les champs avec les descriptions les plus courtes sont d’abord présentés.

note: type: Plain text
en: This indicates the size of the record.
fr: Cela indique la taille de l'enregistrement.

note: type: Plain text
en: The I<misc> field contains additional information about the sample.
fr: Le champ I<misc> contient des renseignements supplémentaires sur l'échantillon.

note: type: Plain text
en: The CPU mode can be determined from this value by masking with B<PERF_RECORD_MISC_CPUMODE_MASK> and looking for one of the following (note these are not bit masks, only one can be set at a time):
fr: Le mode de processeur peut être déterminé à partir de cette valeur en la masquant avec B<PERF_RECORD_MISC_CPUMODE_MASK> et en recherchant un des suivants (remarquez que ce ne sont pas des masques de bits, un seul peut être défini à la fois).

note: type: Plain text
en: Unknown CPU mode.
fr: Mode de processeur inconnu.

note: type: Plain text
en: Sample happened in the kernel.
fr: L'échantillon a eu lieu dans le noyau.

note: type: Plain text
en: Sample happened in user code.
fr: L'échantillon a eu lieu dans le code utilisateur.

note: type: Plain text
en: Sample happened in the hypervisor.
fr: L'échantillon a eu lieu dans l'hyperviseur.

note: commit 39447b386c846bbf1c56f6403c5282837486200f type: Plain text
en: Sample happened in the guest kernel.
fr: L'échantillon a eu lieu dans le noyau client.

note: commit 39447b386c846bbf1c56f6403c5282837486200f type: Plain text
en: Sample happened in guest user code.
fr: L'échantillon a eu lieu dans le code utilisateur client.

note: commit 2fe85427e3bf65d791700d065132772fc26e4d75 type: Plain text
en: This is set when the mapping is not executable; otherwise the mapping is executable.
fr: C’est défini quand l’association n’est pas exécutable ; sinon l’association est exécutable.

note: type: Plain text
en: This indicates that the content of B<PERF_SAMPLE_IP> points to the actual instruction that triggered the event.  See also I<perf_event_attr.precise_ip>.
fr: Cela indique que le contenu de B<PERF_SAMPLE_IP> pointe vers la véritable instruction qui a déclenché l'événement. Consultez aussi I<perf_event_attr.precise_ip>.

note: commit 1676b8a077c352085d52578fb4f29350b58b6e74 type: Plain text
en: This indicates there is extended data available (currently not used).
fr: Cela indique que des données étendues sont disponibles (actuellement pas utilisées).

note: type: Plain text
en: The I<type> value is one of the below.  The values in the corresponding record (that follows the header)  depend on the I<type> selected as shown.
fr: La valeur I<type> est une des suivantes. Les valeurs dans l'enregistrement correspondant (qui suit l'en-tête) dépendent du I<type> sélectionné comme c'est montré.

note: type: Plain text
en: The MMAP events record the B<PROT_EXEC> mappings so that we can correlate user-space IPs to code.  They have the following structure:
fr: Les événements MMAP enregistrent les associations B<PROT_EXEC> pour pouvoir mettre en corrélation les pointeurs d'instruction en espace utilisateur et le code. Ils ont la structure suivante :

note: type: Plain text
en: This record indicates when events are lost.
fr: Cet enregistrement indique quand des événements sont perdus.

note: type: Plain text
en: is the unique event ID for the samples that were lost.
fr: est l'identifiant d'événement unique pour les échantillons perdus.

note: type: Plain text
en: is the number of events that were lost.
fr: est le nombre d'événements perdus.

note: type: Plain text
en: This record indicates a change in the process name.
fr: Cet enregistrement indique une modification du nom de processus.

note: type: Plain text
en: This record indicates a process exit event.
fr: Cet enregistrement indique un événement de fin de processus.

note: type: Plain text
en: This record indicates a throttle/unthrottle event.
fr: Cet enregistrement indique un événement de variation de fréquence du processeur.

note: type: Plain text
en: This record indicates a fork event.
fr: Cet enregistrement indique un événement de création de fils.

note: type: Plain text
en: This record indicates a read event.
fr: Cet enregistrement indique un événement de lecture.

note: type: Plain text
en: This record indicates a sample.
fr: Cet enregistrement indique un échantillon.

note: type: Plain text
en: If B<PERF_SAMPLE_IDENTIFIER> is enabled, a 64-bit unique ID is included.  This is a duplication of the B<PERF_SAMPLE_ID> I<id> value, but included at the beginning of the sample so parsers can easily obtain the value.
fr: Si B<PERF_SAMPLE_IDENTIFIER> est activé, un identifiant unique sur 64 bits est inclus. C’est une copie de la valeur I<id> de B<PERF_SAMPLE_ID>, mais incluse au début de l’échantillon pour permettre aux analyseurs d’obtenir facilement la valeur.

note: type: Plain text
en: If B<PERF_SAMPLE_IP> is enabled, then a 64-bit instruction pointer value is included.
fr: Si B<PERF_SAMPLE_IP> est activé, alors une valeur de pointeur d'instruction sur 64 bits est incluse.

note: type: Plain text
en: If B<PERF_SAMPLE_TID> is enabled, then a 32-bit process ID and 32-bit thread ID are included.
fr: Si B<PERF_SAMPLE_TID> est activé, alors un identifiant de processus sur 32 bits et un identifiant de thread sur 32 bits sont inclus.

note: type: Plain text
en: If B<PERF_SAMPLE_TIME> is enabled, then a 64-bit timestamp is included.  This is obtained via local_clock() which is a hardware timestamp if available and the jiffies value if not.
fr: Si B<PERF_SAMPLE_TIME> est activé, alors un horodatage sur 64 bits est inclus. C'est obtenu à l'aide de  local_clock() qui est un horodatage matériel si disponible et la valeur jiffies sinon.

note: type: Plain text
en: If B<PERF_SAMPLE_ADDR> is enabled, then a 64-bit address is included.  This is usually the address of a tracepoint, breakpoint, or software event; otherwise the value is 0.
fr: Si B<PERF_SAMPLE_ADDR> est activé, alors une adresse sur 64 bits est incluse. C'est généralement l'adresse d'un point de trace, point d'arrêt ou événement logiciel ; sinon la valeur est 0.

note: type: Plain text
en: If B<PERF_SAMPLE_ID> is enabled, a 64-bit unique ID is included.  If the event is a member of an event group, the group leader ID is returned.  This ID is the same as the one returned by B<PERF_FORMAT_ID>.
fr: Si B<PERF_SAMPLE_ID> est activé, un identifiant unique sur 64 bits est inclus. Si l'événement est membre d'un groupe d'événements, l'identifiant du leader de groupe est renvoyé. Cet identifiant est le même que celui renvoyé par B<PERF_FORMAT_ID>.

note: type: Plain text
en: If B<PERF_SAMPLE_STREAM_ID> is enabled, a 64-bit unique ID is included.  Unlike B<PERF_SAMPLE_ID> the actual ID is returned, not the group leader.  This ID is the same as the one returned by B<PERF_FORMAT_ID>.
fr: Si B<PERF_SAMPLE_STREAM_ID> est activé, un identifiant unique sur 64 bits est inclus. Contrairement à B<PERF_SAMPLE_ID>, le véritable identifiant est renvoyé, pas celui du leader de groupe. Cet identifiant est le même que celui renvoyé par B<PERF_FORMAT_ID>.

note: type: Plain text
en: If B<PERF_SAMPLE_CPU> is enabled, this is a 32-bit value indicating which CPU was being used, in addition to a reserved (unused)  32-bit value.
fr: Si B<PERF_SAMPLE_CPU> est activé, c'est une valeur sur 32 bits indiquant le processeur qui a été utilisé, en supplément d'une valeur réservée (non utilisée) sur 32 bits.

note: type: Plain text
en: If B<PERF_SAMPLE_PERIOD> is enabled, a 64-bit value indicating the current sampling period is written.
fr: Si B<PERF_SAMPLE_PERIOD> est activé, une valeur sur 64 bits indiquant la période d'échantillonnage actuelle est écrite.

note: type: Plain text
en: If B<PERF_SAMPLE_READ> is enabled, a structure of type read_format is included which has values for all events in the event group.  The values included depend on the I<read_format> value used at B<perf_event_open>()  time.
fr: Si B<PERF_SAMPLE_READ> est activé, une structure de type I<read_format> est incluse avec des valeurs pour tous les événements du groupe d'événements. Les valeurs incluses dépendent de la valeur I<read_format> utilisée au moment de B<perf_event_open>().

note: type: Plain text
en: If B<PERF_SAMPLE_CALLCHAIN> is enabled, then a 64-bit number is included which indicates how many following 64-bit instruction pointers will follow.  This is the current callchain.
fr: Si B<PERF_SAMPLE_CALLCHAIN> est activé, alors un nombre sur 64 bits est inclus, indiquant le nombre de pointeurs d'instruction sur 64 bits qui suivent. C'est l'appel en chaîne actuel.

note: type: Plain text
en: If B<PERF_SAMPLE_RAW> is enabled, then a 32-bit value indicating size is included followed by an array of 8-bit values of length size.  The values are padded with 0 to have 64-bit alignment.
fr: Si B<PERF_SAMPLE_RAW> est activé, alors une valeur sur 32 bits indiquant la taille est incluse, suivie par un tableau de valeurs sur 8 bits de taille I<size>. Les valeurs sont remplies avec des 0 pour avoir un alignement à 64 bits.

note: type: Plain text
en: This RAW record data is opaque with respect to the ABI.  The ABI doesn't make any promises with respect to the stability of its content, it may vary depending on event, hardware, and kernel version.
fr: Ces données brutes d'enregistrement sont opaques du point de vue de l'ABI. L'ABI ne fait pas de promesses sur la stabilité de son contenu, qui pourrait varier en fonction de l'événement, du matériel ou de la version du noyau.

note: type: Plain text
en: If B<PERF_SAMPLE_BRANCH_STACK> is enabled, then a 64-bit value indicating the number of records is included, followed by I<bnr> I<perf_branch_entry> structures which each include the fields:
fr: Si B<PERF_SAMPLE_BRANCH_STACK> est activé, alors une valeur de 64 bits indiquant le nombre d'enregistrements est incluse, suivie des structures I<bnr> I<perf_branch_entry> qui chacune contiennent les champs suivants.

note: type: Plain text
en: This indicates the source instruction (may not be a branch).
fr: Cela indique l’instruction source (qui pourrait ne pas être un branchement).

note: type: Plain text
en: The branch target.
fr: La cible de branchement.

note: type: Plain text
en: The branch target was mispredicted.
fr: La cible de branchement a été mal prédite.

note: type: Plain text
en: The branch target was predicted.
fr: La cible de branchement a été prédite.

note: type: TP
en: I<in_tx> (since Linux 3.11)
fr: I<in_tx> (depuis Linux 3.11)

note: commit 135c5612c460f89657c4698fe2ea753f6f667963 type: Plain text
en: The branch was in a transactional memory transaction.
fr: Le branchement était dans une transaction de mémoire transactionnelle.

note: type: TP
en: I<abort> (since Linux 3.11)
fr: I<abort> (depuis Linux 3.11)

note: commit 135c5612c460f89657c4698fe2ea753f6f667963 type: Plain text
en: The branch was in an aborted transactional memory transaction.
fr: Le branchement était dans une transaction abandonnée de mémoire transactionnelle.

note: type: Plain text
en: The entries are from most to least recent, so the first entry has the most recent branch.
fr: Les entrées sont présentées dans l’ordre chronologique inverse, de telle sorte que la première entrée a le branchement le plus récent.

note: type: Plain text
en: The type of branches recorded is specified by the I<branch_sample_type> field.
fr: Le type de branchements enregistrés est indiqué par le champ I<branch_sample_type>.

note: type: Plain text
en: If B<PERF_SAMPLE_REGS_USER> is enabled, then the user CPU registers are recorded.
fr: Si B<PERF_SAMPLE_REGS_USER> est activé, alors les registres processeur utilisateur sont enregistrés.

note: type: Plain text
en: The I<abi> field is one of B<PERF_SAMPLE_REGS_ABI_NONE>, B<PERF_SAMPLE_REGS_ABI_32> or B<PERF_SAMPLE_REGS_ABI_64>.
fr: Le champ I<abi> est parmi B<PERF_SAMPLE_REGS_ABI_NONE>, B<PERF_SAMPLE_REGS_ABI_32> ou B<PERF_SAMPLE_REGS_ABI_64>.

note: type: Plain text
en: The I<regs> field is an array of the CPU registers that were specified by the I<sample_regs_user> attr field.  The number of values is the number of bits set in the I<sample_regs_user> bit mask.
fr: Le champ I<regs> est un tableau de registres processeur qui ont été indiqués par le champ attr I<sample_regs_user>. Le nombre de valeurs est le nombre de bits définis dans le masque binaire I<sample_regs_user>.

note: type: Plain text
en: If B<PERF_SAMPLE_WEIGHT> is enabled, then a 64-bit value provided by the hardware is recorded that indicates how costly the event was.  This allows expensive events to stand out more clearly in profiles.
fr: Si B<PERF_SAMPLE_WEIGHT> est activé, une valeur de 64 bits fournie par le matériel est enregistrée pour indiquer le coût de l’événement. Cela permet aux événements coûteux de ressortir plus clairement dans les profils.

note: type: Plain text
en: If B<PERF_SAMPLE_DATA_SRC> is enabled, then a 64-bit value is recorded that is made up of the following fields:
fr: Si B<PERF_SAMPLE_DATA_SRC> est activé, alors une valeur de 64 bits est enregistrée, constituée des champs suivants.

note: type: Plain text
en: Type of opcode, a bitwise combination of:
fr: Type de code opération (opcode), une combinaison bit à bit de :

note: type: Plain text
en: Not available
fr: Non disponible

note: type: Plain text
en: Load instruction
fr: Instruction de chargement

note: type: Plain text
en: Store instruction
fr: Instruction de stockage

note: type: Plain text
en: Executable code
fr: Code exécutable

note: type: Plain text
en: Hit
fr: Atteint

note: type: Plain text
en: Miss
fr: Raté

note: type: Plain text
en: Level 1 cache
fr: Cache de niveau 1

note: type: Plain text
en: Line fill buffer
fr: Tampon de capacité

note: type: Plain text
en: Level 2 cache
fr: Cache de niveau 2

note: type: Plain text
en: Level 3 cache
fr: Cache de niveau 3

note: type: Plain text
en: Local DRAM
fr: DRAM local

note: type: Plain text
en: Remote DRAM 1 hop
fr: DRAM distant 1 saut

note: type: Plain text
en: Remote DRAM 2 hops
fr: DRAM distant 2 sauts

note: type: Plain text
en: Remote cache 1 hop
fr: Cache distant 1 saut

note: type: Plain text
en: Remote cache 2 hops
fr: Cache distant 2 sauts

note: type: Plain text
en: I/O memory
fr: Mémoire d'entrée et sortie.

note: type: Plain text
en: Uncached memory
fr: Mémoire sans cache

note: type: Plain text
en: No snoop
fr: Pas d'espionnage

note: type: Plain text
en: Snoop hit
fr: Espionnage atteint

note: type: Plain text
en: Snoop miss
fr: Espionnage raté

note: type: Plain text
en: Snoop hit modified
fr: Espionnage atteint modifié

note: type: Plain text
en: Locked transaction
fr: Transaction verrouillée

note: type: Plain text
en: Level 1 TLB
fr: TLB de niveau 1

note: type: Plain text
en: Level 2 TLB
fr: TLB de niveau 2

note: type: Plain text
en: Hardware walker
fr: Parcours matériel

note: type: Plain text
en: OS fault handler
fr: Gestionnaire d'erreur du SE

note: type: Plain text
en: If the B<PERF_SAMPLE_TRANSACTION> flag is set, then a 64-bit field is recorded describing the sources of any transactional memory aborts.
fr: Si l’attribut B<PERF_SAMPLE_TRANSACTION> est défini, alors un champ de 64 bits est enregistré pour décrire les sources de tous les abandons de mémoire transactionnelle.

note: type: Plain text
en: The field is a bitwise combination of the following values:
fr: Le champ est une combinaison bit à bit des valeurs suivantes.

note: type: Plain text
en: Abort from an elision type transaction (Intel-CPU-specific).
fr: Abandon d’une transaction de type élision (spécifique aux processeurs Intel).

note: type: Plain text
en: Abort from a generic transaction.
fr: Abandon d’une transaction générique.

note: type: Plain text
en: Synchronous abort (related to the reported instruction).
fr: Abandon synchrone (relatif à l’instruction signalée).

note: type: Plain text
en: Asynchronous abort (not related to the reported instruction).
fr: Abandon asynchrone (non relatif à l’instruction signalée).

note: type: Plain text
en: Retryable abort (retrying the transaction may have succeeded).
fr: Abandon réessayable (réessayer la transaction pourrait réussir).

note: type: Plain text
en: Abort due to memory conflicts with other threads.
fr: Abandon à cause de conflits de mémoire avec d’autres threads.

note: type: Plain text
en: Abort due to write capacity overflow.
fr: Abandon à cause de dépassement de la capacité d’écriture.

note: type: Plain text
en: Abort due to read capacity overflow.
fr: Abandon à cause de dépassement de la capacité de lecture.

note: type: SS
en: rdpmc instruction
fr: Instruction rdpmc

note: commit c7206205d00ab375839bd6c7ddb247d600693c09 type: Plain text
en: Starting with Linux 3.4 on x86, you can use the I<rdpmc> instruction to get low-latency reads without having to enter the kernel.  Note that using I<rdpmc> is not necessarily faster than other methods for reading event values.
fr: À partir de Linux 3.4 sur x86, l'instruction I<rdpmc> permet d'obtenir des lectures à faible latence sans avoir à entrer dans le noyau. Remarquez que l'utilisation de I<rdpmc> n'est pas nécessairement plus rapide que d'autres méthodes pour lire des valeurs d'événement.

note: type: Plain text
en: Support for this can be detected with the I<cap_usr_rdpmc> field in the mmap page; documentation on how to calculate event values can be found in that section.
fr: Cette prise en charge peut être détectée avec le champ I<cap_usr_rdpmc> dans la page mmap ; de la documentation pour calculer les valeurs d'événement est disponible dans cette section.

note: type: SS
en: perf_event ioctl calls
fr: Appels ioctl perf_event

note: type: Plain text
en: Various ioctls act on B<perf_event_open>()  file descriptors:
fr: Plusieurs ioctls agissent sur les descripteurs de fichier de B<perf_event_open>().

note: type: Plain text
en: This enables the individual event or event group specified by the file descriptor argument.
fr: Cela active l'événement individuel ou le groupe d'événements indiqué par l'argument de descripteur de fichier.

note: type: Plain text
en: If the B<PERF_IOC_FLAG_GROUP> bit is set in the ioctl argument, then all events in a group are enabled, even if the event specified is not the group leader (but see BUGS).
fr: Si le bit B<PERF_IOC_FLAG_GROUP> est défini dans l’argument ioctl, alors tous les événements d’un groupe sont activés, même si l’événement indiqué n’est pas le leader de groupe (mais consultez la section BOGUES).

note: type: Plain text
en: This disables the individual counter or event group specified by the file descriptor argument.
fr: Cela désactive le compteur individuel ou le groupe d'événements indiqué par l'argument de descripteur de fichier.

note: type: Plain text
en: Enabling or disabling the leader of a group enables or disables the entire group; that is, while the group leader is disabled, none of the counters in the group will count.  Enabling or disabling a member of a group other than the leader affects only that counter; disabling a non-leader stops that counter from counting but doesn't affect any other counter.
fr: L'activation ou la désactivation du leader d'un groupe active ou désactive la totalité du groupe. Autrement dit, pendant que le leader de groupe est désactivé, aucun des compteurs du groupe ne compte. L'activation ou la désactivation d'un membre du groupe qui n'est pas le leader arrête ce compteur, mais n'affecte aucun des autres compteurs.

note: type: Plain text
en: If the B<PERF_IOC_FLAG_GROUP> bit is set in the ioctl argument, then all events in a group are disabled, even if the event specified is not the group leader (but see BUGS).
fr: Si le bit B<PERF_IOC_FLAG_GROUP> est défini dans l’argument ioctl, alors tous les événements d’un groupe sont désactivés, même si l’événement indiqué n’est pas le leader de groupe (mais consultez la section BOGUES).

note: type: Plain text
en: Reset the event count specified by the file descriptor argument to zero.  This resets only the counts; there is no way to reset the multiplexing I<time_enabled> or I<time_running> values.
fr: Redéfinir le compte d'événements indiqué par l'argument à zéro. Cela ne réinitialise que les décomptes ; réinitialiser les valeurs de multiplexage I<time_enabled> et I<time_running> est impossible.

note: type: Plain text
en: If the B<PERF_IOC_FLAG_GROUP> bit is set in the ioctl argument, then all events in a group are reset, even if the event specified is not the group leader (but see BUGS).
fr: Si le bit B<PERF_IOC_FLAG_GROUP> est défini dans l’argument ioctl, alors tous les événements d’un groupe sont réinitialisés, même si l’événement indiqué n’est pas le leader de groupe (mais consultez la section BOGUES).

note: type: Plain text
en: This updates the overflow period for the event.
fr: Cela met à jour la période de dépassement pour l’événement.

note: type: Plain text
en: The argument is a pointer to a 64-bit value containing the desired new period.
fr: L'argument est un pointeur vers une valeur sur 64 bits contenant la nouvelle période voulue.

note: type: Plain text
en: This tells the kernel to report event notifications to the specified file descriptor rather than the default one.  The file descriptors must all be on the same CPU.
fr: Cela indique au noyau de signaler les notifications d'événement dans le descripteur de fichier indiqué plutôt que dans celui par défaut. Les descripteurs de fichier doivent tous être sur le même processeur.

note: type: Plain text
en: The argument specifies the desired file descriptor, or -1 if output should be ignored.
fr: L'argument indique le descripteur de fichier désiré, ou -1 si la sortie devrait être ignorée.

note: type: TP
en: B<PERF_EVENT_IOC_SET_FILTER> (since Linux 2.6.33)
fr: B<PERF_EVENT_IOC_SET_FILTER> (depuis Linux 2.6.33)

note: commit 6fb2915df7f0747d9044da9dbff5b46dc2e20830 type: Plain text
en: This adds an ftrace filter to this event.
fr: Cela ajoute un filtre ftrace à cet événement.

note: type: Plain text
en: The argument is a pointer to the desired ftrace filter.
fr: L'argument est un pointeur vers le filtre ftrace voulu.

note: type: TP
en: B<PERF_EVENT_IOC_ID> (since Linux 3.12)
fr: B<PERF_EVENT_IOC_ID> (depuis Linux 3.12)

note: commit cf4957f17f2a89984915ea808876d9c82225b862 type: Plain text
en: This returns the event ID value for the given event file descriptor.
fr: Cela renvoie la valeur d’identifiant de l’événement pour le descripteur de fichier d’événement donné.

note: type: Plain text
en: The argument is a pointer to a 64-bit unsigned integer to hold the result.
fr: L'argument est un pointeur vers un entier positif sur 64 bits pour garder le résultat.

note: type: SS
en: perf_event related configuration files
fr: Fichiers de configuration relatifs à perf_event

note: type: Plain text
en: Files in I</proc/sys/kernel/>
fr: Fichiers de I</proc/sys/kernel/>

note: type: Plain text
en: The I<perf_event_paranoid> file can be set to restrict access to the performance counters.
fr: Le fichier I<perf_event_paranoid> peut être défini pour restreindre l'accès aux compteurs de performance :

note: type: Plain text
en: allow access to CPU-specific data but not raw tracepoint samples.
fr: permettre l'accès aux données spécifiques au processeur sauf les échantillons de point de trace brut ;

note: type: Plain text
en: no restrictions.
fr: pas de restriction.

note: type: Plain text
en: The existence of the I<perf_event_paranoid> file is the official method for determining if a kernel supports B<perf_event_open>().
fr: L'existence du fichier I<perf_event_paranoid> est la méthode officielle pour déterminer si un noyau gère B<perf_event_open>().

note: type: Plain text
en: This sets the maximum sample rate.  Setting this too high can allow users to sample at a rate that impacts overall machine performance and potentially lock up the machine.  The default value is 100000 (samples per second).
fr: Cela définit le taux d'échantillonnage maximal. Un réglage trop haut peut permettre aux utilisateurs d'échantillonner à un taux ayant un impact sur les performances de la machine et éventuellement verrouiller la machine. La valeur par défaut est 100000 (échantillons par seconde).

note: type: Plain text
en: Maximum number of pages an unprivileged user can B<mlock>(2).  The default is 516 (kB).
fr: Le nombre maximal de pages qu'un utilisateur sans droit peut verrouiller avec B<mlock>(2). La valeur par défaut est 516 (ko).

note: type: Plain text
en: Files in I</sys/bus/event_source/devices/>
fr: Fichiers de I</sys/bus/event_source/devices/>

note: type: Plain text
en: Since Linux 2.6.34, the kernel supports having multiple PMUs available for monitoring.  Information on how to program these PMUs can be found under I</sys/bus/event_source/devices/>.  Each subdirectory corresponds to a different PMU.
fr: Depuis Linux 2.6.34, le noyau permet d'avoir plusieurs PMU disponibles pour la surveillance. Les informations sur la façon de programmer ces PMU sont disponibles dans I</sys/bus/event_source/devices/>. Tous les sous-répertoires correspondent à une PMU différente.

note: type: TP
en: I</sys/bus/event_source/devices/*/type> (since Linux 2.6.38)
fr: I</sys/bus/event_source/devices/*/type> (depuis Linux 2.6.38)

note: commit abe43400579d5de0078c2d3a760e6598e183f871 type: Plain text
en: This contains an integer that can be used in the I<type> field of I<perf_event_attr> to indicate that you wish to use this PMU.
fr: Cela contient un entier qui peut être utilisé dans le champ I<type> de I<perf_event_attr> pour indiquer la volonté d'utiliser cette PMU.

note: commit 0c9d42ed4cee2aa1dfc3a260b741baae8615744f type: Plain text
en: If this file is 1, then direct user-space access to the performance counter registers is allowed via the rdpmc instruction.  This can be disabled by echoing 0 to the file.
fr: Si ce fichier est 1, alors l’accès direct de l’espace utilisateur aux registres de compteurs de performance est permis à l’aide de l’instruction rdpmc. Cela peut être désactivé en écrivant 0 dans le fichier.

note: type: TP
en: I</sys/bus/event_source/devices/*/format/> (since Linux 3.4)
fr: I</sys/bus/event_source/devices/*/format/> (depuis Linux 3.4)

note: commit 641cc938815dfd09f8fa1ec72deb814f0938ac33 type: Plain text
en: This subdirectory contains information on the architecture-specific subfields available for programming the various I<config> fields in the I<perf_event_attr> struct.
fr: Ce sous-répertoire contient des renseignements sur les sous-champs spécifiques à l’architecture disponibles pour la programmation des divers champs I<config> de la structure I<perf_event_attr>.

note: type: TP
en: I</sys/bus/event_source/devices/*/events/> (since Linux 3.4)
fr: I</sys/bus/event_source/devices/*/events/> (depuis Linux 3.4)

note: commit 641cc938815dfd09f8fa1ec72deb814f0938ac33 type: Plain text
en: This subdirectory contains files with predefined events.  The contents are strings describing the event settings expressed in terms of the fields found in the previously mentioned I<./format/> directory.  These are not necessarily complete lists of all events supported by a PMU, but usually a subset of events deemed useful or interesting.
fr: Ce sous-répertoire contient des fichiers avec des événements prédéfinis. Les contenus sont des chaînes décrivant les réglages d'événements exprimés en termes des champs trouvés dans le répertoire I<./format/> mentionné précédemment. Ce ne sont pas nécessairement des listes complètes de tous les champs pris en charge par une PMU, mais généralement un sous-ensemble d'événements jugés utiles ou intéressants.

note: type: Plain text
en: The content of each file is a list of attribute names separated by commas.  Each entry has an optional value (either hex or decimal).  If no value is specified, then it is assumed to be a single-bit field with a value of 1.  An example entry may look like this: I<event=0x2,inv,ldlat=3>.
fr: Le contenu de chaque fichier est une liste de noms d’attribut séparés par des virgules. Chaque entrée a une valeur facultative (soit hexadécimale, soit décimale). Si aucune valeur n’est indiquée, alors un champ d’un seul bit de valeur 1 est supposé. Un exemple d’entrée pourrait ressembler à I<event=0x2,inv,ldlat=3>.

note: type: Plain text
en: This file is the standard kernel device interface for injecting hotplug events.
fr: Ce fichier est l’interface standard de périphérique du noyau pour l’injection d’événements de branchement à chaud.

note: type: TP
en: I</sys/bus/event_source/devices/*/cpumask> (since Linux 3.7)
fr: I</sys/bus/event_source/devices/*/cpumask> (depuis Linux 3.7)

note: commit 314d9f63f385096580e9e2a06eaa0745d92fe4ac type: Plain text
en: The I<cpumask> file contains a comma-separated list of integers that indicate a representative CPU number for each socket (package)  on the motherboard.  This is needed when setting up uncore or northbridge events, as those PMUs present socket-wide events.
fr: Le fichier I<cpumask> contient une liste d’entiers séparés par des virgules indiquant un numéro représentatif de processeur pour chaque socket (boîtier) de la carte mère. C’est nécessaire lors de la définition d’événements uncore ou northbridge, puisque ces PMU présentent des événements à travers toutes les sockets.

note: type: SH
en: RETURN VALUE
fr: VALEUR DE RETOUR

note: type: Plain text
en: B<perf_event_open>()  returns the new file descriptor, or -1 if an error occurred (in which case, I<errno> is set appropriately).
fr: B<perf_event_open>() renvoie le nouveau descripteur de fichier, ou -1 en cas d'erreur (auquel cas I<errno> contient le code d'erreur).

note: type: SH
en: ERRORS
fr: ERREURS

note: type: Plain text
en: The errors returned by B<perf_event_open>()  can be inconsistent, and may vary across processor architectures and performance monitoring units.
fr: Les erreurs renvoyées par B<perf_event_open>() peuvent être incohérentes et peuvent varier suivant les architectures de processeur et les unités de surveillance des performances.

note: type: Plain text
en: Returned if the I<perf_event_attr> I<size> value is too small (smaller than B<PERF_ATTR_SIZE_VER0>), too big (larger than the page size), or larger than the kernel supports and the extra bytes are not zero.  When B<E2BIG> is returned, the I<perf_event_attr> I<size> field is overwritten by the kernel to be the size of the structure it was expecting.
fr: Renvoyé si la valeur I<size> de I<perf_event_attr> est trop petite (plus petite que B<PERF_ATTR_SIZE_VER0>), trop grande (plus grande que la taille de page) ou plus grande que ce que le noyau peut gérer et que les octets supplémentaires ne sont pas nuls. Lorsque B<E2BIG> est renvoyé, le champ I<size> de I<perf_event_attr> est remplacé, par le noyau, par la taille attendue de la structure.

note: type: Plain text
en: Returned when the requested event requires B<CAP_SYS_ADMIN> permissions (or a more permissive perf_event paranoid setting).  Some common cases where an unprivileged process may encounter this error: attaching to a process owned by a different user; monitoring all processes on a given CPU (i.e., specifying the I<pid> argument as -1); and not setting I<exclude_kernel> when the paranoid setting requires it.
fr: Renvoyé quand l’événement demandé nécessite les droits B<CAP_SYS_ADMIN> (ou un réglage paranoïaque de perf_event plus permissif). Certains cas habituels où un processus non privilégié pourrait tomber sur cette erreur : l’attachement à un processus appartenant à un autre utilisateur ; la surveillance de tous les processus sur un processeur donné (c’est-à-dire, en indiquant -1 pour l’argument I<pid>) ; l’absence de réglage I<exclude_kernel> quand le réglage paranoïaque le nécessite.

note: type: Plain text
en: Returned if the I<group_fd> file descriptor is not valid, or, if B<PERF_FLAG_PID_CGROUP> is set, the cgroup file descriptor in I<pid> is not valid.
fr: Renvoyé si le descripteur de fichier I<group_fd> n’est pas valable, ou, si B<PERF_FLAG_PID_CGROUP> est défini, si le descripteur de fichier cgroup dans I<pid> n’est pas valable.

note: type: Plain text
en: Returned if the I<attr> pointer points at an invalid memory address.
fr: Renvoyé si le pointeur I<attr> pointe vers un adresse de mémoire non valable.

note: type: Plain text
en: Returned if the specified event is invalid.  There are many possible reasons for this.  A not-exhaustive list: I<sample_freq> is higher than the maximum setting; the I<cpu> to monitor does not exist; I<read_format> is out of range; I<sample_type> is out of range; the I<flags> value is out of range; I<exclusive> or I<pinned> set and the event is not a group leader; the event I<config> values are out of range or set reserved bits; the generic event selected is not supported; or there is not enough room to add the selected event.
fr: Renvoyé si l’événement indiqué n’est pas valable. De nombreuse raisons sont possibles pour cela. Une liste non exhaustive : I<sample_freq> est plus grand que le réglage maximal ; le I<cpu> à surveiller n’existe pas ; I<read_format> est hors intervalle ; I<sample_type> est hors intervalle ; la valeur I<flags> est hors intervalle ; I<exclusive> ou I<pinned> sont définis et l’événement n’est pas un leader de groupe ; les valeurs I<config> de l’événement sont hors de l’intervalle ou des bits réservés définis ; l’événement générique sélectionné n’est pas pris en charge ; la place est insuffisante pour ajouter l’événement sélectionné.

note: type: Plain text
en: Returned when the event involves a feature not supported by the current CPU.
fr: Renvoyé quand l’événement implique une fonctionnalité non prise en charge par le processeur actuel.

note: type: Plain text
en: Returned if the I<type> setting is not valid.  This error is also returned for some unsupported generic events.
fr: Renvoyé si le réglage I<type> n’est pas valable. Cette erreur est également renvoyée pour certains événements génériques non pris en charge.

note: commit aa2bc1ade59003a379ffc485d6da2d92ea3370a6 type: Plain text
en: Prior to Linux 3.3, if there was not enough room for the event, B<ENOSPC> was returned.  In Linux 3.3, this was changed to B<EINVAL>.  B<ENOSPC> is still returned if you try to add more breakpoint events than supported by the hardware.
fr: Avant Linux 3.3, s'il manquait de la place pour l'événement, B<ENOSPC> était renvoyé. Dans Linux 3.3, cela a été modifié en B<EINVAL>. B<ENOSPC> est toujours renvoyé en cas de tentative d’ajout de plus d’événements de point d'arrêt que permis par le matériel.

note: type: Plain text
en: Returned if B<PERF_SAMPLE_STACK_USER> is set in I<sample_type> and it is not supported by hardware.
fr: Renvoyé si B<PERF_SAMPLE_STACK_USER> est défini dans I<sample_type> et que ce n’est pas pas pris en charge par le matériel.

note: type: Plain text
en: Returned if an event requiring a specific hardware feature is requested but there is no hardware support.  This includes requesting low-skid events if not supported, branch tracing if it is not available, sampling if no PMU interrupt is available, and branch stacks for software events.
fr: Renvoyé si un événement nécessitant une fonctionnalité spécifique du matériel est demandée alors qu’il n’y a pas de prise en charge matérielle. Cela comprend la demande d’événement à faible dérapage si ce n’est pas pris en charge, le suivi de branchement s’il n’est pas pris en charge, l’échantillonnage si aucune interruption PMU n’est disponible et les piles de branchement pour les événements logiciels.

note: type: Plain text
en: Returned on many (but not all) architectures when an unsupported I<exclude_hv>, I<exclude_idle>, I<exclude_user>, or I<exclude_kernel> setting is specified.
fr: Renvoyé sur beaucoup d’architectures (mais pas toutes) quand un des réglages I<exclude_hv>, I<exclude_idle>, I<exclude_user> ou I<exclude_kernel> non pris en charge est indiqué.

note: commit a4e95fc2cbb31d70a65beffeaf8773f881328c34 type: Plain text
en: It can also happen, as with B<EACCES>, when the requested event requires B<CAP_SYS_ADMIN> permissions (or a more permissive perf_event paranoid setting).  This includes setting a breakpoint on a kernel address, and (since Linux 3.13) setting a kernel function-trace tracepoint.
fr: Cela peut aussi arriver, comme avec B<EACCES>, quand l’événement demandé nécessite les droits B<CAP_SYS_ADMIN> (ou un réglage paranoïaque de perf_event plus permissif). Cela comprend le réglage d’un point d'arrêt sur une adresse du noyau et (depuis Linux 3.13) le réglage d’un point de trace de fonction du noyau.

note: type: Plain text
en: Returned if attempting to attach to a process that does not exist.
fr: Renvoyé en cas de tentative d’attachement à un processus qui n’existe pas.

note: type: SH
en: VERSION
fr: VERSIONS

note: commit 0793a61d4df8daeac6492dbf8d2f3e5713caae5e commit cdd6c482c9ff9c55475ee7392ec8f672eddb7be6 type: Plain text
en: B<perf_event_open>()  was introduced in Linux 2.6.31 but was called B<perf_counter_open>().  It was renamed in Linux 2.6.32.
fr: B<perf_event_open>() a été introduite dans Linux 2.6.31 mais était appelée B<perf_counter_open>(). Elle a été renommée dans Linux 2.6.32.

note: type: SH
en: CONFORMING TO
fr: CONFORMITÉ

note: type: Plain text
en: Glibc does not provide a wrapper for this system call; call it using B<syscall>(2).  See the example below.
fr: La glibc ne fournit pas de fonction autour de cet appel système\ ; utilisez B<syscall>(2) pour l'appeler. Consultez l'exemple ci-dessous.

note: type: Plain text
en: The official way of knowing if B<perf_event_open>()  support is enabled is checking for the existence of the file I</proc/sys/kernel/perf_event_paranoid>.
fr: Le moyen officiel pour savoir si la prise en charge de B<perf_event_open>() est activée est de vérifier si le fichier I</proc/sys/kernel/perf_event_paranoid> existe.

note: type: SH
en: BUGS
fr: BOGUES

note: commit ba0a6c9f6fceed11c6a99e8326f0477fe383e6b5 type: Plain text
en: The B<F_SETOWN_EX> option to B<fcntl>(2)  is needed to properly get overflow signals in threads.  This was introduced in Linux 2.6.32.
fr: L'option B<F_SETOWN_EX> de B<fcntl>(2) est nécessaire pour obtenir correctement les signaux de dépassement dans les threads. Cela a été introduit dans Linux 2.6.32.

note: commit b690081d4d3f6a23541493f1682835c3cd5c54a1 type: Plain text
en: Prior to Linux 2.6.33 (at least for x86), the kernel did not check if events could be scheduled together until read time.  The same happens on all known kernels if the NMI watchdog is enabled.  This means to see if a given set of events works you have to B<perf_event_open>(), start, then read before you know for sure you can get valid measurements.
fr: Avant Linux 3.3 (en tout cas pour x86), le noyau ne vérifiait pas si les événements pouvaient être programmés ensemble avant le moment de la lecture. La même chose arrive sur tous les noyaux connus si le watchdog NMI est activé. Cela signifie que pour voir si un ensemble donné d'événements fonctionne, il faut appeler B<perf_event_open>(), démarrer, puis lire avant d'être sûr de pouvoir obtenir des mesures valables.

note: FIXME . cannot find a kernel commit for this one type: Plain text
en: Prior to Linux 2.6.34, event constraints were not enforced by the kernel.  In that case, some events would silently return "0" if the kernel scheduled them in an improper counter slot.
fr: Avant Linux 2.6.34, les contraintes d'événements n'étaient pas renforcées par le noyau. Dans ce cas, certains événements renverraient « 0 » silencieusement si le noyau les avait programmés dans un emplacement de compteur incorrect.

note: commit 45e16a6834b6af098702e5ea6c9a40de42ff77d8 type: Plain text
en: Prior to Linux 2.6.34, there was a bug when multiplexing where the wrong results could be returned.
fr: Avant Linux 2.6.34, à cause d'un bogue lors du multiplexage, de mauvais résultats pouvaient être renvoyés.

note: commit 38b435b16c36b0d863efcf3f07b34a6fac9873fd type: Plain text
en: Kernels from Linux 2.6.35 to Linux 2.6.39 can quickly crash the kernel if "inherit" is enabled and many threads are started.
fr: Les noyaux de Linux 2.6.35 à Linux 2.6.39 peuvent planter rapidement si I<inherit> est activé et que de nombreux threads sont démarrés.

note: commit 050735b08ca8a016bbace4445fa025b88fee770b type: Plain text
en: Prior to Linux 2.6.35, B<PERF_FORMAT_GROUP> did not work with attached processes.
fr: Avant Linux 2.6.35, B<PERF_FORMAT_GROUP> ne fonctionnait pas avec les processus attachés.

note: commit 4ec8363dfc1451f8c8f86825731fe712798ada02 type: Plain text
en: There is a bug in the kernel code between Linux 2.6.36 and Linux 3.0 that ignores the "watermark" field and acts as if a wakeup_event was chosen if the union has a nonzero value in it.
fr: À cause d'un bogue dans le code du noyau entre Linux 2.6.36 et Linux 3.0, le champ I<watermark> était ignoré et agissait comme si I<wakeup_event> avait été choisi si l'union contenait une valeur non nulle.

note: commit 724b6daa13e100067c30cfc4d1ad06629609dc4e type: Plain text
en: From Linux 2.6.31 to Linux 3.4, the B<PERF_IOC_FLAG_GROUP> ioctl argument was broken and would repeatedly operate on the event specified rather than iterating across all sibling events in a group.
fr: De Linux 2.6.31 à Linux 3.4, l’argument ioctl B<PERF_IOC_FLAG_GROUP> était cassé et opérait à répétition sur l’événement indiqué au lieu d’itérer parmi tous les événements frères d’un groupe.

note: commit fa7315871046b9a4c48627905691dbde57e51033 type: Plain text
en: From Linux 3.4 to Linux 3.11, the mmap I<cap_usr_rdpmc> and I<cap_usr_time> bits mapped to the same location.  Code should migrate to the new I<cap_user_rdpmc> and I<cap_user_time> fields instead.
fr: De Linux 3.4 à Linux 3.11, les bits mmap I<cap_usr_rdpmc> et I<cap_usr_time> étaient associés au même emplacement. Le code devrait plutôt être modifié pour utiliser les nouveaux champs I<cap_user_time> et I<cap_user_rdpmc> à la place.

note: commit f287d332ce835f77a4f5077d2c0ef1e3f9ea42d2 type: Plain text
en: Always double-check your results! Various generalized events have had wrong values.  For example, retired branches measured the wrong thing on AMD machines until Linux 2.6.35.
fr: Vérifiez toujours deux fois les résultats. Plusieurs événements généralisés ont eu de fausses valeurs. Par exemple, les branchements retirés ne mesuraient pas la bonne chose sur les machines AMD jusqu'au noyau 2.6.35.

note: type: SH
en: EXAMPLE
fr: EXEMPLE

note: type: Plain text
en: The following is a short example that measures the total instruction count of a call to B<printf>(3).
fr: Ce qui suit est un court exemple qui mesure le décompte total d'instructions d'un appel à B<printf>(3).

note: type: Plain text
en:     fd = perf_event_open(&pe, 0, -1, -1, 0);
        if (fd == -1) {
           fprintf(stderr, "Error opening leader %llx\en", pe.config);
           exit(EXIT_FAILURE);
        }
fr:     fd = perf_event_open(&pe, 0, -1, -1, 0);
        if (fd == -1) {
           fprintf(stderr, "Erreur d'ouverture du leader %llx\en", pe.config);
           exit(EXIT_FAILURE);
        }

note: type: Plain text
en:     printf("Measuring instruction count for this printf\en");
fr:     printf("Mesure du décompte d'instructions pour ce printf\en");

note: type: Plain text
en:     printf("Used %lld instructions\en", count);
fr:     printf("%lld instructions utilisées\en", count);

note: type: SH
en: SEE ALSO
fr: VOIR AUSSI

note: type: Plain text
en: This page is part of release 5.03 of the Linux I<man-pages> project.  A description of the project, information about reporting bugs, and the latest version of this page, can be found at \%https://www.kernel.org/doc/man-pages/.
fr: Cette page fait partie de la publication 5.03 du projet I<man-pages> Linux. Une description du projet et des instructions pour signaler des anomalies peuvent être trouvées à l'adresse \%https://www.kernel.org/doc/man-pages/.

note: type: TH
en: 2019-03-06
fr: 6 mars 2019

note: type: Plain text
en: This page is part of release 5.02 of the Linux I<man-pages> project.  A description of the project, information about reporting bugs, and the latest version of this page, can be found at \%https://www.kernel.org/doc/man-pages/.
fr: Cette page fait partie de la publication 5.02 du projet I<man-pages> Linux. Une description du projet et des instructions pour signaler des anomalies peuvent être trouvées à l'adresse \%https://www.kernel.org/doc/man-pages/.

note: type: Plain text
en: This page is part of release 5.01 of the Linux I<man-pages> project.  A description of the project, information about reporting bugs, and the latest version of this page, can be found at \%https://www.kernel.org/doc/man-pages/.
fr: Cette page fait partie de la publication 5.01 du projet I<man-pages> Linux. Une description du projet et des instructions pour signaler des anomalies peuvent être trouvées à l'adresse \%https://www.kernel.org/doc/man-pages/.
