cvs commit: src/sys/kern sched_ule.c

Joao Barros joao.barros at gmail.com
Wed Jul 18 12:22:33 UTC 2007


On 7/17/07, Jeff Roberson <jeff at freebsd.org> wrote:
> jeff        2007-07-17 22:53:24 UTC
>
>   FreeBSD src repository
>
>   Modified files:
>     sys/kern             sched_ule.c
>   Log:
>   ULE 3.0:  Fine grain scheduler locking and affinity improvements.  This has
>   been in development for over 6 months as SCHED_SMP.
>    - Implement one spin lock per thread-queue.  Threads assigned to a
>      run-queue point to this lock via td_lock.
>    - Improve the facility for assigning threads to CPUs now that sched_lock
>      contention no longer dominates scheduling decisions on larger SMP
>      machines.
>    - Re-write idle time stealing in an attempt to make it less damaging to
>      general performance.  This is still disabled by default. See
>      kern.sched.steal_idle.
>    - Call the long-term load balancer from a callout rather than sched_clock()
>      so there are no locks held.  This is disabled by default.  See
>      kern.sched.balance.
>    - Parameterize many scheduling decisions via sysctls.  Try to document
>      these via sysctl descriptions.
>    - General structural and naming cleanups.
>    - Document each function with comments.
>
>   Tested by:      current@ amd64, x86, UP, SMP.
>   Approved by:    re
>
>   Revision  Changes    Path
>   1.200     +917 -549  src/sys/kern/sched_ule.c
> _______________________________________________

I've been following your blog on this, *great* job!
Beer is on me if you're ever in Portugal :D


-- 
Joao Barros


More information about the cvs-src mailing list