Provided by: manpages-fr_4.27.0-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/pid/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.

STANDARDS

       Aucun.

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)

TRADUCTION

       La   traduction   française   de   cette   page   de   manuel   a   été   créée   par  Christophe  Blaess
       <https://www.blaess.fr/christophe/>,   Stéphan   Rafin   <stephan.rafin@laposte.net>,   Thierry   Vignaud
       <tvignaud@mandriva.com>,  François  Micaux,  Alain Portal <aportal@univ-montp2.fr>, Jean-Philippe Guérard
       <fevrier@tigreraye.org>,   Jean-Luc   Coulon   (f5ibh)   <jean-luc.coulon@wanadoo.fr>,   Julien   Cristau
       <jcristau@debian.org>,      Thomas      Huriaux      <thomas.huriaux@gmail.com>,     Nicolas     François
       <nicolas.francois@centraliens.net>,    Florentin    Duneau    <fduneau@gmail.com>,     Simon     Paillard
       <simon.paillard@resel.enst-bretagne.fr>,     Denis    Barbier    <barbier@debian.org>,    David    Prévot
       <david@tilapin.org> et Jean-Pierre Giraud <jean-pierregiraud@neuf.fr>

       Cette traduction est une documentation libre ; veuillez vous  reporter  à  la  GNU General Public License
       version 3 concernant les conditions de copie et de distribution. Il n'y a aucune RESPONSABILITÉ LÉGALE.

       Si  vous  découvrez  un  bogue  dans la traduction de cette page de manuel, veuillez envoyer un message à
       debian-l10n-french@lists.debian.org.

Pages du manuel de Linux 6.9.1                     2 mai 2024                                            numa(7)