2011/3/29 Daniel Veillard <veillard(a)redhat.com>:
On Tue, Mar 29, 2011 at 02:32:19PM +0800, Osier Yang wrote:
> Sample of cputune xml:
> <cputune>
> <shares>2048</shares>
> <vcpupin vcpu='0' cpuset='0-4,^3'/>
> <vcpupin vcpu='1' cpuset='1,2'/>
> </cputune>
>
> * docs/schemas/domain.rng
> ---
> docs/schemas/domain.rng | 32 ++++++++++++++++++++++++++++++++
> 1 files changed, 32 insertions(+), 0 deletions(-)
>
> @@ -2198,6 +2219,17 @@
> <param name="minInclusive">1</param>
> </data>
> </define>
> + <define name="vcpuid">
> + <data type="unsignedShort">
> + <param name="pattern">[0-9]+</param>
> + </data>
> + </define>
> + <define name="cpushares">
> + <data type="unsignedInt">
> + <param name="pattern">[0-9]+</param>
> + <param name="maxInclusive">262144</param>
> + </data>
> + </define>
So there is a bounded value 262144 for cpushares, good but
still no indication of the meaning :-)
Actually for ESX I would want this value to be an unrestricted signed
integer. ESX has 3 predefined values: low, normal and high. Currently
in the scheduler parameters functions I map them to -1, -2, -3. But
I'm not sure if that's a thing we should use as a general pattern. I
might also calculate the actual values, instead of using special
symbolic values. The vSphere docs contain formulas for this
conversion.
Nevertheless, I vote against this arbitrary (cgroup specific?) upper limit.
Matthias