Provided by: manpages-fr-dev_3.32d0.2p4-1_all bug

NOM

       getcpu  -  Déterminer le processeur et le nœud NUMA sur lesquels le thread appelant est en
       cours d'exécution

SYNOPSIS

       #include <linux/getcpu.h>

       int getcpu(unsigned *cpu, unsigned *node, struct getcpu_cache *tcache);

DESCRIPTION

       L'appel système getcpu() identifie le processeur et le nœud  sur  lesquels  le  thread  ou
       processus  appelant est en cours d'exécution et écrit le résultat dans les entiers pointés
       par les arguments cpu et node. Le processeur est un petit entier  unique  identifiant  une
       CPU. Le nœud est un petit entier unique identifiant un nœud NUMA. Si cpu ou node est NULL,
       rien n'est écrit dans leur pointeur respectif.

       Le troisième argument de cet appel système est aujourd'hui inutilisé.

       L'information placée dans cpu n'est garantie d'être exacte qu'au  moment  de  l'appel :  à
       moins  que  l'affinité  CPU  n'ait  été  définie  avec sched_setaffinity(2), le noyau peut
       changer de processeur à tout moment. (Normalement, cela n'arrive  pas  car  l'ordonnanceur
       essaie  de  minimiser  les mouvements entre CPU et cache, mais c'est possible.) L'appelant
       doit être prêt à gérer la situation où cpu et node ne sont plus les CPU et nœud actuels.

VERSIONS

       getcpu() a été ajouté au noyau dans sa version 2.6.19 pour  les  architectures  x86_64  et
       i386.

CONFORMITÉ

       getcpu() est spécifique à Linux.

NOTES

       Linux  fait  de  gros  efforts  pour rendre cet appel aussi rapide que possible. Le but de
       getcpu() est de permettre aux programmes de réaliser des optimisations de données  propres
       à chaque processeur et pour l'optimisation NUMA.

       La glibc ne fournit pas de fonction autour de cet appel système ; utilisez syscall(2) pour
       l'appeler ; ou utilisez sched_getcpu(3) à la place.

       Le paramètre tcache n'est pas utilisé depuis la version 2.6.24 de Linux. Dans  les  noyaux
       antérieurs,  si cet argument n'était pas NULL, il spécifiait un pointeur vers un tampon de
       l'appelant dans l'espace local de stockage du thread utilisé pour fournir un mécanisme  de
       cache  à getcpu(). L'utilisation de ce cache pouvait accélérer les appels à getcpu(), avec
       le faible risque que l'information renvoyée ne soit plus à jour. On  a  considéré  que  le
       mécanisme  de  cache  entraînait  des  problèmes  lors  de  la  migration de threads entre
       processeurs, aussi, cet argument est aujourd'hui ignoré.

VOIR AUSSI

       mbind(2), sched_setaffinity(2), set_mempolicy(2), sched_getcpu(3), cpuset(7)

COLOPHON

       Cette page fait partie de la publication 3.32 du projet man-pages Linux.  Une  description
       du  projet  et  des  instructions  pour  signaler  des  anomalies  peuvent être trouvées à
       l'adresse <URL:http://www.kernel.org/doc/man-pages/>.

TRADUCTION

       Depuis   2010,   cette   traduction   est   maintenue   à   l'aide   de    l'outil    po4a
       <URL:http://po4a.alioth.debian.org/>  par  l'équipe  de  traduction francophone au sein du
       projet perkamon <URL:http://perkamon.alioth.debian.org/>.

       Alain Portal <URL:http://manpagesfr.free.fr/> (2008).

       Veuillez     signaler     toute     erreur     de     traduction     en     écrivant     à
       <debian-l10n-french@lists.debian.org>   ou   par   un  rapport  de  bogue  sur  le  paquet
       manpages-fr.

       Vous pouvez toujours avoir accès à la version anglaise de  ce  document  en  utilisant  la
       commande « man -L C <section> <page_de_man> ».