Re: RSDL v0.31

From: Al Boldi
Date: Sat Mar 17 2007 - 00:38:08 EST


Con Kolivas wrote:
> On Saturday 17 March 2007 08:55, Al Boldi wrote:
> > With X nice'd at -10, and 11 hogs loading the cpu, interactivity looks
> > good until the default timeslice/quota is exhausted and slows down.
> > Maybe adjusting this according to nice could help.
>
> Not sure what you mean by that. It's still a fair distribution system,
> it's just that nice -10 has quite a bit more cpu allocated than nice 0.
> Eventually if you throw enough load at it it will slow down too.

I mean #DEF_TIMESLICE seems like an initial quota, which gets reset with each
major rotation. Increasing this according to nice may give it more room for
an interactivity boost, before being expired. Alternatively, you may just
reset the rotation, if the task didn't use it's quota within one full major
rotation, effectively skipping the expiry toll.

> > It may also be advisable to fix latencies according to nice, and adjust
> > timeslices instead. This may help scaleability a lot, as there are some
> > timing sensitive apps that may crash under high load.
>
> You will find that is the case already with this version. Even under heavy
> load if you were to be running one server niced (say httpd nice 19 in the
> presence of mysql nice 0) the latencies would be drastically reduced
> compared to mainline behaviour. I am aware this becomes an issue for some
> heavily loaded servers because some servers run multithreaded while others
> do not, forcing the admins to nice their multithreaded ones.

The thing is, latencies are currently dependent on the number of tasks in the
run-queue; i.e. more rq-tasks means higher latencies, yet fixed timeslices
according to nice. Just switching this the other way around, by fixing
latencies according to nice, and adjusting the timeslices depending on
rq-load, may yield a much more scalable system.


Thanks!

--
Al

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/