Re: [BENCHMARK] scheduler tunables with contest - prio_bonus_ratio

scott thomason (scott@thomasons.org)
Tue, 24 Dec 2002 16:26:26 -0600


On Thursday 19 December 2002 05:41 pm, Robert Love wrote:
> On Thu, 2002-12-19 at 18:18, Andrew Morton wrote:
> > That is too often not the case.
>
> I knew you would say that!
>
> > I can get the desktop machine working about as comfortably
> > as 2.4.19 with:
> >
> > # echo 10 > max_timeslice
> > # echo 0 > prio_bonus_ratio
> >
> > ie: disabling all the fancy new scheduler features :(
> >
> > Dropping max_timeslice fixes the enormous stalls which happen
> > when an interactive process gets incorrectly identified as a
> > cpu hog. (OK, that's expected)

My experiences to add to the pot...I started by booting 2.5.52-mm2 and
launching KDE3. I have a dual AMD MP2000+, 1GB RAM, with most of the
data used below on striped/RAID0 ATA/133 drives. Taking Andrew's
advice, I created a continuous load with:

while [ 1 ]; do ( make -j4 clean; make -j4 bzImage ); done

...in a kernel tree, then sat down for a leisurely email and web
cruising session. After about fifteen minutes, it became apparent I
wasn't suffering any interactive slowdown. So I increased the load:

while [ 1 ]; do ( make -j8 clean; make -j8 bzImage ); done
while [ 1 ]; do ( cp dump1 dump2; rm dump2; sync ); done

...where file "dump1" is 100MB. Now we're seeing some impact :)

To combat this I tried:

echo 3000 > starvation_limit
echo 4 > interactive_delta
echo 200 max_timeslice
echo 20 min_timeslice

This works pretty well. The "spinning envelope" on the email monitor
of gkrellm actually corresponds quite nicely with the actual feel of
my system, so after awhile, I just sat back and observed it. Both the
tactile response and the gkrellm obervations show this: it's common
to experience maybe a .1--.3 second lag every 2 or 3 seconds with
this load, with maybe the odd .5 second lag occurring once or twice a
minute. Watching the compile job in the background scroll by, I
noticed that there are times when it comes to a dead stop. The next
step, I guess, needs to be a ConTest with the final settings...

child_penalty: 95

exit_weight: 3

interactive_delta: 4

max_sleep_avg: 2000

max_timeslice: 300

min_timeslice: 10

parent_penalty: 100

prio_bonus_ratio: 25

starvation_limit: 3000
---scott

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