xenial (7) numa.7.gz

Provided by: manpages-fr_3.65d1p1-1_all bug

NOM

       numa - Panorama des architectures à mémoire non uniforme

DESCRIPTION

       NUMA  (« Non-Uniform  Memory  Access » : accès à la mémoire de façon non uniforme) se réfère aux systèmes
       multiprocesseur dont la mémoire est divisé en plusieurs nœuds mémoire. Le temps d'accès à un nœud mémoire
       dépend  de  la  localisation  relative  du  CPU  utilisateur  et du nœud utilisé (à l'opposé des systèmes
       multiprocesseur symétriques pour lesquels le temps d'accès à la mémoire est le  même  quel  que  soit  le
       CPU).  Normalement,  chaque  CPU  sur un système NUMA a un nœud mémoire local pour lequel il peut accéder
       plus rapidement au contenu, par rapport aux mémoires des nœuds locaux aux autres CPU où à la mémoire  sur
       un bus partagé par tous les CPU.

   Appels système NUMA
       Le  noyau  Linux  implémente  les  appels  système  suivants  liés  aux NUM : get_mempolicy(2), mbind(2),
       migrate_pages(2), move_pages(2) et set_mempolicy(2). Cependant  les  applications  devraient  normalement
       utiliser l'interface fournie par libnuma ; consultez « Prise en charge par la bibliothèque » ci-dessous.

   /proc/[number]/numa_maps (depuis Linux 2.6.14)
       Ce fichier affiche des informations concernant l'allocation et la politique mémoire NUMA d'un processus.

       Chaque  ligne  contient  des  informations  concernant  un  intervalle  mémoire utilisé par un processus,
       indiquant, entre autre, la politique mémoire effective pour cet intervalle mémoire et sur quels nœuds les
       pages ont été allouées.

       numa_maps  est un fichier en lecture seule. Quand /proc/<pid>/numa_maps est lu, le noyau analyse l'espace
       d'adressage virtuel du processus et indique comment la mémoire est utilisée. Une ligne est affichée  pour
       chaque intervalle mémoire du processus.

       Le premier champ de chaque ligne indique l'adresse de départ de l'intervalle mémoire. Ce champ permet une
       corrélation avec le contenu du fichier /proc/<pid>/maps, qui contient l'adresse de fin de l'intervalle et
       d'autres informations, comme les permissions d'accès et le partage.

       Le  second champ indique la politique mémoire effective actuellement pour l'intervalle mémoire. Notez que
       la politique effective n'est pas forcément la politique installée par le processus  pour  cet  intervalle
       mémoire.  En  particulier,  si  le  processus  a installé une politique par défaut (« default ») pour cet
       intervalle, la politique effective pour cet intervalle sera la politique du processus, qui peut  être  ou
       ne pas être « default ».

       Le  reste  de  la ligne contient des informations sur les pages allouées dans l'intervalle mémoire, comme
       ceci :

       N<node>=<nombre_pages>
              Le nombre de pages allouées  sur  le  nœud  <node>.  <nombre_pages>  ne  comprend  que  les  pages
              actuellement  projetées  par  le  processus.  Un  déplacement ou une libération de page peut avoir
              temporairement déprojeté les pages associées avec cet intervalle mémoire.  Ces  pages  ne  peuvent
              réapparaître  que  quand le processus essaie de les référencer. Si l'intervalle mémoire représente
              une zone de mémoire partagée ou  une  projection  dans  un  fichier,  d'autres  processus  peuvent
              actuellement avoir d'autres pages projetées dans l'intervalle mémoire associé.

       file=<nom_fichier>
              Le  fichier  contenant l'intervalle mémoire. Si le fichier est une projection privée, des accès en
              écriture peuvent avoir produit des pages COW (« Copy-On-Write » : copie  à  l'écriture)  dans  cet
              intervalle mémoire. Ces pages sont affichées comme des pages anonymes.

       heap   L'intervalle mémoire est utilisé pour le tas.

       stack  L'intervalle mémoire est utilisé pour la pile.

       huge   Gros intervalle mémoire. Le nombre de pages indiqué correspond à de grosses pages, pas à des pages
              de taille usuelle.

       anon=<pages>
              Le nombre de pages anonymes dans l'intervalle.

       dirty=<pages>
              Nombre de pages sales.

       mapped=<pages>
              Nombre total de pages projetées, n'étant ni sales (dirty), ni anonymes (anon).

       mapmax=<compte>
              Nombre maximal de processus projetant une même page (« mapcount ») rencontrés lors  de  l'analyse.
              Ceci peut être utilisé comme indicateur du degré de partage dans un intervalle mémoire donné.

       swapcache=<compte>
              Nombre de pages qui ont une entrée associée sur un périphérique de partage.

       active=<pages>
              Le  nombre de pages sur la liste active. Ce champ n'est affiché que si ce nombre diffère du nombre
              de pages dans l'intervalle. Ceci signifie que certaines pages inactives existent dans l'intervalle
              mémoire,  et  qu'elles  pourront  être  retirées  de  la  mémoire prochainement par le « swapper »
              (processus de gestion des périphériques d'échange).

       writeback=<pages>
              Nombre de pages qui sont actuellement en cours d'écriture sur le disque.

CONFORMITÉ

       Aucune norme ne régi les interfaces NUMA.

NOTES

       Les appels système NUMA de Linux et les interfaces  /proc  ne  sont  disponibles  que  si  le  noyau  est
       configuré et construit avec l'option CONFIG_NUMA.

   Prise en charge par la bibliothèque
       Faire l'édition des liens avec -lnuma pour obtenir la définition des appels système. libnuma et l'en-tête
       <numaif.h> sont disponibles dans le paquet numactl.

       Cependant, les applications ne devraient pas  utiliser  ces  appels  système  directement.  À  la  place,
       l'interface  de  plus haut niveau fournie par les fonctions numa(3) du paquet numactl est recommandée. Le
       paquet numactl est disponible à l'adresse ⟨ftp://oss.sgi.com/www/projects/libnuma/download/⟩.  Le  paquet
       est aussi inclus dans certaines distributions. Certaines distributions inclues séparément la bibliothèque
       et les en-têtes pour le développement dans le paquet numactl-devel.

VOIR AUSSI

       get_mempolicy(2), mbind(2), move_pages(2), set_mempolicy(2), numa(3), cpuset(7), numactl(8)

COLOPHON

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

TRADUCTION

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

       Nicolas François et l'équipe francophone de traduction de Debian (2006-2009).

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