cvs commit: src/sys/kern sched_ule.c

Jeff Roberson jeff at FreeBSD.org
Sat Jun 14 19:18:31 PDT 2003


jeff        2003/06/14 19:18:29 PDT

  FreeBSD src repository

  Modified files:
    sys/kern             sched_ule.c 
  Log:
   - Fix the maximum slice value.  I accidentally checked in a value of '2'
     which meant no process would run for longer than 20ms.
   - Slightly redo the interactivity scorer.  It follows the same algorithm but
     in a slightly more correct way.  Previously values above half were
     incorrect.
   - Lower the interactivity threshold to 20.  It seems that in testing non-
     interactive tasks are hardly ever near there and expensive interactive
     tasks can sometimes surpass it.  This area needs more testing.
   - Remove an unnecessary KTR.
   - Fix a case where an idle thread that had an elevated priority due to
     priority prop. would be placed back on the idle queue.
   - Delay setting NEEDRESCHED until userret() for threads that haad their
     priority elevated while in kernel.  This gives us the same context switch
     optimization as SCHED_4BSD.
   - Limit the child's slice to 1 in sched_fork_kse() so we detect its behavior
     more quickly.
   - Inhert some of the run/slp time from the child in sched_exit_ksegrp().
   - Redo some of the priority comparisons so they are more clear.
   - Throttle the frequency of sched_pctcpu_update() so that rounding errors
     do not make it invalid.
  
  Revision  Changes    Path
  1.39      +54 -38    src/sys/kern/sched_ule.c


More information about the cvs-src mailing list