lkml.org 
[lkml]   [2007]   [Jul]   [28]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: Linus 2.6.23-rc1


On Sat, 28 Jul 2007, Jan Engelhardt wrote:
>
> Time to investigate...

Well, one thing that would be worth doing is to simply create a trace of
time-slices for both schedulers.

It could easily be some hacky thing that just saves the process name and
TSC at each scheduling event in some fairly small fixed-sized per-CPU
circular buffer, and have a /sys interface that reads it out, and then you
do

sleep 60 ; cat /sys/cpubuffer > buffer

and play the game for 60 seconds (so that you get a buffer that represents
perhaps the last 10 seconds of play).

It could *literally* just be an effect of the time quanta used, and CFS
just deciding that it's not interactive and giving things too long of a
CPU slice.

Yes, it's what "/proc/sys/kernel/sched_granularity_ns" is supposed to
tweak, but maybe there's some misfeature there, or maybe the default is
just bad for games, or whatever.

Ingo: that sysctl_sched_granularity initialization doesn't make sense. You
talk about it being in units of nanoseconds, but then you do

2000000000ULL/HZ

which is nonsensical. That value is "2 seconds" (not 2ms like the comment
says) in nanoseconds, but then divided by HZ, so what's the meaning of
that HZ thing? Nothing in the scheduler should care about jiffies, why is
that related to HZ? All the scheduler clocks are in ns.

Linus
-
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/

\
 
 \ /
  Last update: 2007-07-28 21:37    [W:0.142 / U:0.664 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site