The dopricalc variable controls whether the kernel adjusts the priorities of all runnable processes at one-second intervals. Its value has no effect on the recalculation every clock tick of the priority of a process that is currently running.
For some application mixes, such as database servers that have no logged-in users and that make frequent I/O requests, disabling the recalculation of the priorities of ready-to-run processes may improve performance. This is because a process running on a CPU is more likely to continue to run until it reaches the end of its time slice or until it sleeps on starting an I/O request.
The default value of dopricalc is 1 which enables the
one-second priority calculations.
To turn off the calculations, set the value of
dopricalc to 0,
relink the kernel, and reboot the system.
This modification will reduce the number of context switches,
and may increase the efficiency of the L2 cache.
However, it may impair the performance of the system
if there is a mixture of interactive and CPU-intensive processes.
spend all or nearly all of their time in user space;
they do not go to sleep waiting for I/O,
and so they are unlikely to be context switched
except at the end of their time slice.
As a consequence, interactive processes may receive
less access to the CPU.