Valeur nice
100%

Processus · Leçon 8

Valeur nice

Découvrez comment les valeurs nice influencent le poids de planification du processeur pour les processus Linux ordinaires.

Linux peut exécuter simultanément des threads sur plusieurs cœurs et partager dans le temps un cœur entre davantage de threads exécutables qu’il ne peut en exécuter à la fois. L’ordonnanceur effectue ces choix selon la politique de planification, la priorité, l’affinité et la charge. Une valeur nice constitue l’un des paramètres des politiques ordinaires de partage du temps.

Interpréter les valeurs nice

La plage conventionnelle des valeurs nice va de -20 à 19 :

  • une valeur plus faible accorde à une tâche un poids de planification supérieur à celui de tâches comparables ;
  • une valeur plus élevée la rend plus « aimable » en lui accordant un poids relatif inférieur ;
  • la valeur par défaut est généralement 0.

La valeur nice ne réserve pas un pourcentage du processeur et ne garantit pas une exécution immédiate. Son effet est surtout visible lorsque des tâches exécutables comparables se disputent le temps processeur. Les politiques temps réel, les cgroups, l’affinité du processeur, les attentes d’entrées-sorties et d’autres contrôles peuvent dominer le comportement observé.

Sous une même politique de planification ordinaire, quelle valeur nice donne un poids relatif supérieur pour le processeur ?

Afficher la valeur nice

Dans top, la colonne NI affiche la valeur nice. Vous pouvez également la demander à ps :

$ ps -o pid,ni,pri,stat,cmd -p 3245

NI est la valeur nice visible par l’utilisateur. Une colonne PRI ou semblable peut indiquer une priorité dérivée de l’ordonnanceur dont l’échelle varie selon l’outil et la classe de planification ; ne supposez donc pas que les deux colonnes sont interchangeables.

Quelle colonne de top affiche normalement la valeur nice ?

Lancer une commande avec `nice`

Employez nice pour lancer une nouvelle commande avec une valeur ajustée :

$ nice -n 5 long-computation

La méthode exacte de demande de l’ajustement et la syntaxe acceptée peuvent être vérifiées dans le manuel local. Un utilisateur sans privilèges peut normalement rendre une commande plus aimable en augmentant sa valeur. Lui attribuer une valeur plus faible, et donc un poids de planification plus favorable, exige les privilèges ou les limites de ressources configurées appropriés.

Que fait nice -n 5 long-computation ?

Modifier un processus existant avec `renice`

Employez renice pour un processus déjà en cours d’exécution :

$ renice -n 10 -p 3245

Cette commande demande la valeur nice 10 pour le PID 3245. Vérifiez d’abord la cible, car les PID peuvent être réutilisés, puis confirmez la valeur obtenue. Les permissions dépendent de la propriété, des privilèges, des limites de ressources et de la politique du système. L’augmentation de la valeur nice est généralement autorisée pour un processus que vous possédez ; l’annulation de ce changement peut ne pas l’être sans privilèges.

Quel outil modifie la valeur nice d’un processus existant ?

L’atelier Gérer et surveiller les processus Linux offre un environnement contrôlé pour afficher et modifier les valeurs nice. Comparez des tâches gourmandes en processeur qui se disputent les ressources plutôt que d’attendre une différence visible sur un système inactif.

Leçon terminée

Vous avez terminé Valeur nice

Vous savez maintenant interpréter et ajuster la valeur nice sans la considérer comme une garantie de processeur.

  • Lire les valeurs nice plus faibles comme un poids de planification relatif supérieur.

  • Examiner NI séparément des champs de priorité dérivés.

  • Employer nice lors du lancement d’une commande.

  • Employer renice pour un processus existant et vérifié.

Conservez votre progression

Créez un compte gratuit pour enregistrer cette leçon et continuer sur n'importe quel appareil.

Créer un compte gratuit
Leçon Suivante
Retour à Processus