Outils pour utilisateurs

Outils du site


informatique:linux:nice

nice / renice

nice permet de fixer une priorité à une tâche lancée

Utilisation

Pour donner une priorité haute au lancement du script mon_script.sh

nice -n -19 mon_script.sh

Pour donner une priorité basse au lancement du script mon_script.sh

nice -n +19 mon_script.sh

Pour redéfinir la priorité identifier le numéro de processus par la commande ps -ef puis :

renice -19 8097

:!: 8097 étant le numéro de processus

Le tutoriel ci-dessous montre la différence du temps de traitement selon que l'on ait affecté une priorité Haute ou basse

On lance la commande dd if=/dev/zero of=/dev/null en tâche de fond pour générer de l'utilisation CPU sans fixer de priorité au processus (taskset permet de spécifier le CPU que l'on désire utiliser)

taskset 2 dd if=/dev/zero of=/dev/null &

On lance la commande dd if=/dev/zero of=/dev/null bs=4096 count=1000000 avec une priorité haute

taskset 2 nice -n -19 dd if=/dev/zero of=/dev/null bs=4096 count=1000000

On peut constater que le processus a pu copier 4.1 GB en 1,28s :

1000000+0 records in
1000000+0 records out
4096000000 bytes (4.1 GB) copied, 1.28544 seconds, 3.2 GB/s

On lance la commande dd if=/dev/zero of=/dev/null bs=4096 count=1000000 cette fois avec une priorité basse

taskset 2 nice -n +19 dd if=/dev/zero of=/dev/null bs=4096 count=1000000

On peut constater que le même traitement a été beaucoup plus long, effectivement moins de temps CPU a été alloué pour ce processus.

1000000+0 records in
1000000+0 records out
4096000000 bytes (4.1 GB) copied, 26.8988 seconds, 152 MB/s
informatique/linux/nice.txt · Dernière modification: 2018/09/06 19:10 (modification externe)