All of lore.kernel.org
 help / color / mirror / Atom feed
From: NISHIGUCHI Naoki <nisiguti@jp.fujitsu.com>
To: George Dunlap <George.Dunlap@eu.citrix.com>,
	xen-devel@lists.xensource.com
Cc: Ian.Pratt@eu.citrix.com, disheng.su@intel.com,
	Keir Fraser <keir.fraser@eu.citrix.com>
Subject: Re: [RFC][PATCH] scheduler: credit scheduler for client virtualization
Date: Thu, 18 Dec 2008 11:49:25 +0900	[thread overview]
Message-ID: <4949BA35.8020408@jp.fujitsu.com> (raw)
In-Reply-To: <49389D50.60309@jp.fujitsu.com>

Hi all,

In almost the same environment as the paper, I experimented with credit 
scheduler(original and modified version).
I describe the results below.

Unfortunately the good result was not obtained by my previous patches.

I found that there were some problems on my previous patches.
So, I had revised the patches and experimented with revised version 
again. Using revised patches, the good result was obtained.
Especially, please look at the result of ex7. In revised version, I/O 
bandwidth per guest is growing correctly according to dom0's weight.

I'll post the revised patches later.

Thanks,
Naoki Nishiguchi

---------- results ----------
experimental environment:
   HP dc7800 US/CT(Core2 Duo E6550 2.33GHz)
     Multi-processor: disable
   Xen: xen 3.3.0 release
   dom0: CentOS 5.2

I used the following experiments from among the paper's experiments.
ex3: burn x7, ping x1
ex5: stream x7, ping x1
ex7: stream x3, burn x3, ping x1
ex8: stream x3, ping+burn x1, burn x3

original credit scheduler
ex3
   burn(%):      14 14 14 14 14 14 14
   ping(ms):     19.7(average)  0.1 - 359
ex5
   stream(Mbps): 144.05 141.19 137.81 137.01 137.30 138.76 142.21
   ping(ms)    : 8.2(average)  7.84 - 8.63
ex7
   stream(Mbps): 33.74 27.74 34.70
   burn(%):      28 28 28 (by guess)
   ping(ms):     238(average)  1.78 - 485
ex7(xm sched-credit -d 0 -w 512)
   There was no change in the result.
ex8
   stream(Mbps): 9.98 11.32 10.61
   ping+burn:    264.9ms(average)  20.3 - 547
                 24%
   burn(%):      24 24 24


modified version(previous patches)
ex3
   burn(%):      14 14 14 14 14 14 14
   ping(ms):     0.17(average)  0.136 - 0.202
ex5
   stream(Mbps): 143.90 141.79 137.15 138.43 138.37 130.33 143.36
   ping(ms):     7.2(average)  4.85 - 8.95
ex7
   stream(Mbps): 2.33 2.18 1.87
   burn(%):      32 32 32 (by guess)
   ping(ms):     373.7(average)  68.0 - 589
ex7(xm sched-credit -d 0 -w 512)
   There was no change in the result.
ex7(xm sched-credit -d 0 -m 100 -r 20)
   stream(Mbps): 114.49 117.59 115.76
   burn(%):      24 24 24
   ping(ms):     1.2(average)  0.158 - 65.1
ex8
   stream(Mbps): 1.31 1.09 1.92
   ping+burn:    387.7ms(average)  92.6 - 676
                 24% (by guess)
   burn(%):      24 24 24 (by guess)


revised version
ex3
   burn(%):      14 14 14 14 14 14 14
   ping(ms):     0.18(average)  0.140 - 0.238
ex5
   stream(Mbps): 142.57 139.03 137.50 136.77 137.61 138.95 142.63
   ping(ms):     8.2(average)  7.86 - 8.71
ex7
   stream(Mbps): 143.63 132.13 131.77
   burn(%):      24 24 24
   ping(ms):     32.2(average)  1.73 - 173
ex7(xm sched-credit -d 0 -w 512)
   stream(Mbps): 240.06 204.85 229.23
   burn(%):      18 18 18
   ping(ms):     7.0(average)  0.412 - 73.9
ex7(xm sched-credit -d 0 -m 100 -r 20)
   stream(Mbps): 139.74 134.95 135.18
   burn(%):      23 23 23
   ping(ms):     15.1(average)  1.87 - 95.4
ex8
   stream(Mbps): 118.15 106.71 116.37
   ping+burn:    68.8ms(average) 1.86 - 319
                 19%
   burn(%):      19 19 19
----------

NISHIGUCHI Naoki wrote:
> Thanks for your information.
> 
> George Dunlap wrote:
>> There was a paper earlier this year about scheduling and I/O performance:
>>  http://www.cs.rice.edu/CS/Architecture/docs/ongaro-vee08.pdf
>>
>> One of the things he noted was that if a driver domain is accepting
>> network packets for multiple VMs, we sometimes get the following
>> pattern:
>> * driver domain wakes up, starts processing packets.  Because it's in
>> "over", it doesn't get boosted.
>> * Passes a packet to VM 1, waking it up.  It runs in "boost",
>> preempting the (now lower-priority) driver domain.
>> * Other packets (possibly even for VM 1) sit in the driver domain's
>> queue, waiting for it to get cpu time.
> 
> I don't read the paper yet, but I think our approach is effective in 
> this problem.
> However, if driver domain consumes cpu time too much, we couldn't 
> prevent it from becoming "over" priority. Otherwise, we could keep it 
> with "under" or "boost" priority.
> 
>> Their tests, for 3 networking guests and 3 cpu-intensive guests,
>> showed a 40% degradation in performance due to this problem.  While
>> we're thinking about the scheduler, it might be worth seeing if we can
>> solve this.
> 
> Firstly, I'd like to read the paper.
> 
> Regards,
> Naoki Nishiguchi
> 
> 
> _______________________________________________
> Xen-devel mailing list
> Xen-devel@lists.xensource.com
> http://lists.xensource.com/xen-devel

  reply	other threads:[~2008-12-18  2:49 UTC|newest]

Thread overview: 15+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2008-12-03  8:54 [RFC][PATCH] scheduler: credit scheduler for client virtualization NISHIGUCHI Naoki
2008-12-03  9:16 ` Keir Fraser
2008-12-03 12:46   ` George Dunlap
2008-12-04  7:51     ` NISHIGUCHI Naoki
2008-12-04 12:21       ` George Dunlap
2008-12-04 12:37         ` George Dunlap
2008-12-05  3:17           ` NISHIGUCHI Naoki
2008-12-18  2:49             ` NISHIGUCHI Naoki [this message]
2008-12-18 10:21               ` George Dunlap
2008-12-05  2:47         ` NISHIGUCHI Naoki
2008-12-05 11:37           ` George Dunlap
2008-12-08  8:37             ` NISHIGUCHI Naoki
2008-12-04  7:45   ` NISHIGUCHI Naoki
     [not found] ` <de76405a0901191232k19d910d5o77160fa5ee7bf06c@mail.gmail.com>
     [not found]   ` <de76405a0901191257p3b45304fi538d040b5634de23@mail.gmail.com>
     [not found]     ` <49768FDB.60609@jp.fujitsu.com>
2009-01-21 10:35       ` George Dunlap
2009-01-22  6:15         ` NISHIGUCHI Naoki

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=4949BA35.8020408@jp.fujitsu.com \
    --to=nisiguti@jp.fujitsu.com \
    --cc=George.Dunlap@eu.citrix.com \
    --cc=Ian.Pratt@eu.citrix.com \
    --cc=disheng.su@intel.com \
    --cc=keir.fraser@eu.citrix.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.