From: Ryan Harper <ryanh@us.ibm.com>
To: Amitayu Das <amitayudas@gmail.com>
Cc: xen-devel@lists.xensource.com
Subject: Re: Possible bugs and doubts about readjusting weights/slice-lengths from command prompt
Date: Wed, 3 May 2006 14:06:13 -0500 [thread overview]
Message-ID: <20060503190612.GH16776@us.ibm.com> (raw)
In-Reply-To: <5f74ce410605031140h2c4af2eej5652dffff97389d3@mail.gmail.com>
* Amitayu Das <amitayudas@gmail.com> [2006-05-03 13:40]:
> Hi,
>
> Thanks for the reply. Please find answers to your questions embedded below.
>
> On 5/3/06, Ryan Harper <ryanh@us.ibm.com> wrote:
> >
> >* Amitayu Das <amitayudas@gmail.com> [2006-05-03 00:49]:
> >
> >> 2. Say, I'm readjusting the slice lengths of running domains. While
> >doing
> >> that, I make a mistake by having sum of the slice-lengths higher than
> >> period-length. In such cases, what does Xen actually do? I did not find
> >> sanity-checking code for such cases in xen/common/sched_sedf.c. Please
> >let
> >> me know in case it's not there, why so or it's there, only I did not
> >find
> >> it.
> >
> >For time-driven domains, versus weighted domains in sched_sedf.c:1407
> >
> > /*
> > * Sanity checking: note that disabling extra weight requires
> > * that we set a non-zero slice.
> > */
> > if ( (cmd->u.sedf.period > PERIOD_MAX) ||
> > (cmd->u.sedf.period < PERIOD_MIN) ||
> > (cmd->u.sedf.slice > cmd->u.sedf.period) ||
> > (cmd->u.sedf.slice < SLICE_MIN) )
> > return -EINVAL;
> >
> >period has bounds, slice cannot be greater than period, and slice cannot
> >be smaller than SLICE_MIN. For any of these cases, the command will not
> >succeed. You also might be interested in looking at
> >tools/xm-test/tests/sedf which has some simple sedf scheduler tests.
>
>
> I talked about one situation with one example. Say, by default (Xen 3.0.1)
> Dom0's time-slice is 15 ms within period of 20 ms. Now I create two DomU's
> and then I specify their slice-lengths (assuming that I can do that, which
> is not the case as I'm going to discuss w.r.t. point # 3 in my last mail.
> I'll come to that later) as 15 ms each (specifying a period length of 100ms
> or 0.1s). Now, see my mistake. Dom0 will be getting 75 ms out of every 100
> ms and I'm left with 25 ms only; however, I've specified the slice-length as
> 15 ms for each domain (or any value higher than 12.5 ms, so to say). Please
> let me know if sanity checking for this kind of situation are there in Xen
> and if there are, please let me know the location. Now please look into the
> point # 3 below.
I see. AFAIK, other than through setting weights, sedf scheduler does
not check aggregate period/slice for all domains.
> >> 3. I tried to modify/readjust the slice/period length (or weights) for
> >> domains from command prompt. However, I found out that changes are
> >> immaterial after first attempt. That is, no matter what changes I made
> >at
> >> second or third or fourth time, they are not actually taking place.
> >Only,
> >> the changes made during the first attempt actually took place. Please
> >let me
> >> know if this is a bug in the existing code or I should have done the
> >things
> >> in a different manner.
> >
> >Could you supply the xm sched-sedf commands and values you used?
>
>
> I forgot to mention that I faced problems while changing the (slice, period)
> pair muiltiple times for any domain. I did not have any problem in
> changing/setting weight values for domains. However, examples of commands
> used by me for changing (slice,period) pairs are as below:
> (I'm trying to set (2, 20) for VM with id 2 and (3,20) for VM with id 3,
> avoiding situations as mentioned in point # 2 above):
>
> xm sched-sedf 2 2000000 20000000 0 0 0
> xm sched-sedf 3 3000000 20000000 0 0 0
Those commands don't work because you need to specify what those values mean:
[root@x460-3 ~]# xm help sched-sedf
sched-sedf [DOM] [OPTIONS] Show|Set simple EDF parameters
-p, --period Relative deadline(ms).
-s, --slice Worst-case execution time(ms)
(slice < period).
-l, --latency scaled period(ms) in case the domain
is doing heavy I/O.
-e, --extra flag (0/1) which controls whether the
domain can run in extra-time
-w, --weight mutually exclusive with period/slice and
specifies another way of setting a domain's
cpu period/slice.
You probably want:
xm sched-sedf 2 -p 20 -s 20.0
xm sched-sedf 3 -p 30 -s 30.0
I don't have any problems setting slice/period multiple times:
[root@x460-3 ~]# xm sched-sedf 2
Name ID Period(ms) Slice(ms) Lat(ms) Extra Weight
dom2 2 50.0 50.0 0.0 1 0
[root@x460-3 ~]# xm sched-sedf 2 -p 20.0 -s 20.0
[root@x460-3 ~]# xm sched-sedf 2
Name ID Period(ms) Slice(ms) Lat(ms) Extra Weight
dom2 2 20.0 20.0 0.0 1 0
[root@x460-3 ~]# xm sched-sedf 3 -p 30.0 -s 30.0
[root@x460-3 ~]# xm sched-sedf
Name ID Period(ms) Slice(ms) Lat(ms) Extra Weight
Domain-0 0 20.0 15.0 0.0 1 0
dom1 1 100.0 0.0 0.0 1 0
dom10 10 100.0 0.0 0.0 1 0
dom11 11 100.0 0.0 0.0 1 0
dom12 12 100.0 0.0 0.0 1 0
dom14 14 100.0 0.0 0.0 1 0
dom15 15 100.0 0.0 0.0 1 0
dom2 2 20.0 20.0 0.0 1 0
dom3 3 30.0 30.0 0.0 1 0
dom4 4 100.0 0.0 0.0 1 0
dom5 5 100.0 0.0 0.0 1 0
dom6 6 100.0 0.0 0.0 1 0
dom7 7 100.0 0.0 0.0 1 0
dom8 8 100.0 0.0 0.0 1 0
dom9 9 100.0 0.0 0.0 1 0
[root@x460-3 ~]# xm sched-sedf 2 -p 100.0 -s 50.0
[root@x460-3 ~]# xm sched-sedf 2
Name ID Period(ms) Slice(ms) Lat(ms) Extra Weight
dom2 2 100.0 50.0 0.0 1 0
>
> These commands did not work even repeated multiple times or repeated with
> different other values for the pair. The way we checked that is using a
> program given by Diwaker
> (please check
> http://lists.xensource.com/archives/html/xen-users/2006-01/msg01228.html
> ).
The program looks fine, but xm sched-sedf <dom> displays same the information.
--
Ryan Harper
Software Engineer; Linux Technology Center
IBM Corp., Austin, Tx
(512) 838-9253 T/L: 678-9253
ryanh@us.ibm.com
prev parent reply other threads:[~2006-05-03 19:06 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2006-05-03 5:48 Possible bugs and doubts about readjusting weights/slice-lengths from command prompt Amitayu Das
2006-05-03 15:26 ` Ryan Harper
[not found] ` <5f74ce410605031140h2c4af2eej5652dffff97389d3@mail.gmail.com>
2006-05-03 19:06 ` Ryan Harper [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20060503190612.GH16776@us.ibm.com \
--to=ryanh@us.ibm.com \
--cc=amitayudas@gmail.com \
--cc=xen-devel@lists.xensource.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.