Re: 2.5 Changes doc update.

Robert Love (rml@tech9.net)
11 Dec 2002 14:46:51 -0500


On Wed, 2002-12-11 at 12:25, Dave Jones wrote:

> Process scheduler improvements.
> ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> - Another much talked about feature. Ingo Molnar reworked the process
> scheduler to use an O(1) algorithm. In operation, you should notice
> no changes with low loads, and increased scalability with large numbers
> of processes, especially on large SMP systems.
> - Robert Love wrote various utilities for changing behaviour of the
> scheduler (binding processes to CPUs etc). You can find these tools at
> http://tech9.net/rml/schedutils
> - Regressions to mingo@redhat.com and rml@tech9.net

Two notes here:

- The behavior of sched_yield() changed a lot. A task that uses
this system call should now expect to sleep for possibly a very
long time. Tasks that do not really desire to give up the
processor for a while should probably not make heavy use of this
function. Unfortunately, some GUI programs (like Open Office)
do make excessive use of this call and under load their
performance is poor. It seems this new 2.5 behavior is optimal
but some user-space applications may need fixing.

- The above applies to use of yield() in the kernel, too.

- 2.5 adds system calls for manipulating a task's processor
affinity: sched_getaffinity() and sched_setaffinity()

Robert Love

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/