WARNING - OLD ARCHIVES

This is an archived copy of the Xen.org mailing list, which we have preserved to ensure that existing links to archives are not broken. The live archive, which contains the latest emails, can be found at http://lists.xen.org/
   
 
 
Xen 
 
Home Products Support Community News
 
   
 

xen-devel

Re: [Xen-devel] Possible bugs and doubts about readjusting weights/slice

To: Amitayu Das <amitayudas@xxxxxxxxx>
Subject: Re: [Xen-devel] Possible bugs and doubts about readjusting weights/slice-lengths from command prompt
From: Ryan Harper <ryanh@xxxxxxxxxx>
Date: Wed, 3 May 2006 14:06:13 -0500
Cc: xen-devel@xxxxxxxxxxxxxxxxxxx
Delivery-date: Wed, 03 May 2006 12:09:14 -0700
Envelope-to: www-data@xxxxxxxxxxxxxxxxxx
In-reply-to: <5f74ce410605031140h2c4af2eej5652dffff97389d3@xxxxxxxxxxxxxx>
List-help: <mailto:xen-devel-request@lists.xensource.com?subject=help>
List-id: Xen developer discussion <xen-devel.lists.xensource.com>
List-post: <mailto:xen-devel@lists.xensource.com>
List-subscribe: <http://lists.xensource.com/cgi-bin/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/cgi-bin/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=unsubscribe>
References: <5f74ce410605022248m31c5de98j95c2dbffd6b5878a@xxxxxxxxxxxxxx> <20060503152649.GE16776@xxxxxxxxxx> <5f74ce410605031140h2c4af2eej5652dffff97389d3@xxxxxxxxxxxxxx>
Sender: xen-devel-bounces@xxxxxxxxxxxxxxxxxxx
User-agent: Mutt/1.5.6+20040907i
* Amitayu Das <amitayudas@xxxxxxxxx> [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@xxxxxxxxxx> wrote:
> >
> >* Amitayu Das <amitayudas@xxxxxxxxx> [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@xxxxxxxxxx

_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel

<Prev in Thread] Current Thread [Next in Thread>