SCHED_4BSD bad interactivity on 7.0 vs 6.3

Nate Eldredge neldredge at math.ucsd.edu
Sat Jul 12 22:23:15 UTC 2008


Hi folks,

Hopefully this is a good list for this topic.

It seems like there has been a regression in interactivity from 
6.3-RELEASE to 7.0-RELEASE when using the SCHED_4BSD scheduler.  After 
upgrading my single-cpu amd64 box, 7.0 has much worse latency.  When 
running a kernel compile, there is a noticeable lag to echo my typing or 
scroll my browser windows, and playing an mp3 frequently cuts out for a 
second or two.  This did not happen on 6.3-RELEASE.

I wrote a small program which forks two processes that run gettimeofday() 
in a tight loop to see how long they get scheduled out.  On 6.3 the 
maximum latency is usually under 100 ms.  On 7.0 it is 500 ms or more even 
when nothing else is running on the system.  When a compile is also 
running it is sometimes 1400 ms or more.

SCHED_ULE is much better, so I've switched over.  But it's not the default 
yet, and most people are still going to be using SCHED_4BSD.  It used to 
be acceptable but now it isn't.  Does anyone know why it's regressed so 
badly?

-- 

Nate Eldredge
neldredge at math.ucsd.edu


More information about the freebsd-hackers mailing list