Re: [Vserver] Shares and Reservations in the token-bucket-algorithm

From: Herbert Poetzl <herbert_at_13thfloor.at>
Date: Wed 26 Jul 2006 - 16:02:32 BST
Message-ID: <20060726150232.GE11859@MAIL.13thfloor.at>

On Sun, Jul 23, 2006 at 09:22:41PM +0200, Wilhelm Meier wrote:
> Hello,
>
> I have a question to the token-bucket-filter on top of the
> linux-scheduler according to the dokumentation (and i must state
> that I didn't check the source until now ...).

> The (fillrate/intervall) gives the shares of the number of cpus one
> vserver can get at maximum.

yes, this one can be considered an 'upper' limit of
cpu resources which can be consumed, given that the
hard cpu scheduler is activated

> But what happens if only one vserver has runnable processes?

nothing is changed here, i.e. it is still the upper
limit of cpu resources, but there is an additional
pair of fillrate/interval values, which will kick
in when a cpu would go idle (advance idle time)

> Then it gets only (fillrate/intervall) of all cpus (not taking
> tokensmax and tokensmin into account).

from the first token bucket settings, yes

> Shouldn't this be called a reservation instead of a share?

no, because nothing is 'reserved' here, for example
if you give 50% to each of your 5 guests, they will
not be able to utilize 250% cpu :)

> A share should be the amount of cpus a vserver gets if all vservers
> have runnable processes.

a misleading term, what if you have three guests
running and two are idle? how to calculate shares
then?

> If one vserver has no runnable processes, then the
> cpus should be given proportianal to the active vservers
> (at least this is what Solaris-10 does).

well, not all solaris does is a good idea per se
and I think the current hard cpu scheduler is much
more powerful than the solaris proportional stuff
(i.e. you can consider the solaris settings a subset
of what you can achieve with the hard cpu scheduler)

> In the paper
>
> http://www.cs.princeton.edu/~mef/research/vserver/paper.pdf
>
> I found the terms "shares" and "reservations" but I can't find the
> point to setup both types of parameters.

I'm not sure the current tools already support all
the features the scheduler has, but I think they
will catch up pretty soon ...

> I would be glad if someone could explain this to me.

when I find some time, I'll write a detailed wiki
page about the various parameters and features

HTC,
Herbert

> --
> Wilhelm Meier
> email: wilhelm.meier@fh-kl.de
> _______________________________________________
> Vserver mailing list
> Vserver@list.linux-vserver.org
> http://list.linux-vserver.org/mailman/listinfo/vserver
_______________________________________________
Vserver mailing list
Vserver@list.linux-vserver.org
http://list.linux-vserver.org/mailman/listinfo/vserver
Received on Wed Jul 26 16:04:48 2006

[Next/Previous Months] [Main vserver Project Homepage] [Howto Subscribe/Unsubscribe] [Paul Sladen's vserver stuff]
Generated on Wed 26 Jul 2006 - 16:04:55 BST by hypermail 2.1.8