Learn How To Adjust Process Niceness (priority) on Most Linux Distributions
Table of Contents
- Show niceness of a process
- Start a process with a specific niceness value
- Change niceness of a process
In GNU/Linux systems, “niceness” is used to define the CPU priority of a process. Essentially, it is the opposite of priority. So the nicer a process is, the less priority it has and vice versa. It is useful to adjust the niceness of a process, for example, when a non-important program is hindering CPU performance. By default, all processes have a niceness of 0. The niceness scale goes from -20 to 19.
As a non-root user, you can only increase niceness of processes you own. Root privileges are required to decrease the niceness of any process.
In this article, I will assume that you have root privileges (either logged in as the root user, or using sudo
).
Show niceness of a process
In htop
and top
, niceness is listed for each process under the “NI
” field:
root@demo:~# top
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
1 root 20 0 56892 6580 5216 S 0.0 1.3 0:01.09 systemd
2 root 20 0 0 0 0 S 0.0 0.0 0:00.00 kthreadd
3 root 20 0 0 0 0 S 0.0 0.0 0:00.00 ksoftirqd/0
5 root 0 -20 0 0 0 S 0.0 0.0 0:00.00 kworker/0:0H
7 root 20 0 0 0 0 S 0.0 0.0 0:00.07 rcu_sched
Start a process with a specific niceness value
You can use the nice
command to execute a command with a niceness value of your choice. For example:
nice -n 10 apt upgrade
This would run apt upgrade
but with a niceness of 10, instead of the default value of 0.
The general format of the command above is as follows:
nice -n NICENESS COMMAND
Where NICENESS
is any number between -20 and 19, and COMMAND
is any command you would normally type in a shell.
Change niceness of a process
To modify the nice value of a process that is already running you would use renice
. For example:
root@demo:~# renice -10 -p 564
564 (process ID) old priority 0, new priority -10
This command re-assigns a nice value of -10 to the process with the PID 564
.
The general format is as follows:
renice NICENESS -p PID
Where NICENESS
is any number between -20 and 19, and PID
is the process ID of the targeted process.
Need help?
Do you need help setting up this on your own service?
Please contact us and we’ll provide you the best possible quote!