17.11. Configuration des politiques NUMA à l'aide de systemd

L'accès non uniforme à la mémoire (NUMA) est une conception de sous-système de mémoire d'ordinateur, dans laquelle le temps d'accès à la mémoire dépend de l'emplacement physique de la mémoire par rapport au processeur.

La mémoire proche de l'unité centrale a un temps de latence plus faible (mémoire locale) que la mémoire locale d'une autre unité centrale (mémoire étrangère) ou partagée entre plusieurs unités centrales.

En ce qui concerne le noyau Linux, la politique NUMA régit où (par exemple, sur quels nœuds NUMA) le noyau alloue des pages de mémoire physique pour le processus.

systemd fournit les options de fichier d'unité NUMAPolicy et NUMAMask pour contrôler les politiques d'allocation de mémoire pour les services.

Procédure

Pour définir la politique de mémoire NUMA à l'aide de l'option NUMAPolicy unit file option :

  1. Vérifiez les valeurs de l'option de fichier de l'unité NUMAPolicy dans le service de votre choix :

    $ systemctl show --property <NUMA policy configuration option> <service name>
  2. En tant qu'utilisateur principal, définissez le type de stratégie requis pour l'option de fichier d'unité NUMAPolicy:

    # systemctl set-property <service name> NUMAPolicy=<value>
  3. Redémarrez le service pour appliquer les modifications.

    # systemctl restart <service name>

Pour définir un paramètre global NUMAPolicy via l'option manager configuration:

  1. Recherchez l'option NUMAPolicy dans le fichier /etc/systemd/system.conf.
  2. Modifiez le type de politique et enregistrez le fichier.
  3. Recharger la configuration de systemd:

    # systemd daemon-reload
  4. Redémarrer le serveur.
Important

Lorsque vous configurez une politique NUMA stricte, par exemple bind, veillez à définir également l'option de fichier d'unité CPUAffinity=.

Ressources supplémentaires