All of lore.kernel.org
 help / color / mirror / Atom feed
From: George Dunlap <George.Dunlap@eu.citrix.com>
To: Yuehai Xu <yuehaixu@gmail.com>
Cc: xen-devel@lists.xensource.com, yhxu@wayne.edu
Subject: Re: Question about the ability of credit scheduler to handle I/O and CPU intensive VMs
Date: Mon, 11 Oct 2010 12:05:24 +0100	[thread overview]
Message-ID: <AANLkTinuXsv3FUG6Y1VTdgbFQRVknUjCECN1i5P+xigQ@mail.gmail.com> (raw)
In-Reply-To: <AANLkTi=nWMg7OQKLMOT6Z6-ok3pzEZS10AhxddcJTMf2@mail.gmail.com>

On Sun, Oct 10, 2010 at 5:08 AM, Yuehai Xu <yuehaixu@gmail.com> wrote:
> After changing vcpu_unblock() to always call vcpu_wake(), the VM that
> has event can be scheduled immediately no matter whether it is CPU
> intensive. However, I have another question. Except the I/O event, it
> seems there are many other events too. Our design is to give a VM a
> very short period of time when it has "I/O event", and right now,
> vcpu_wake() is invoked when an event comes, even it is not "I/O
> event", this will cause that the VM is scheduled much more frequently
> than what I except.
>
> For example, suppose 2 VMs, one is CPU intensive and another is CPU +
> I/O intensive, from the level of scheduler, almost the same number of
> events are received from the two VMs. Even I/O itself creates event,
> since there are other events, the total number of events are almost
> the same. In such case, I think we need to differentiate the I/O
> events from other events.
>
> I add trace point to __run_tickle() and notice the result that the
> number of events are almost the same from two VMs, one of which is CPU
> intensive and the other is CPU + I/O intensive. Although I do not
> completely confirm what I have said currently, I need do more
> experiments.

Remind me, are you running in HVM mode, or PV mode?

That sounds unusual.  Is it the number of events delivered, or the
number of times the guest woke up?  NB they're not the same -- an HVM
guest will block and then wake up on the completion of an I/O
instruction which is handled by qemu.

If you're running in HVM mode, you can use "xenalyze -s" will give you
a summary of the trace.  In the summary you can see not only now many
times a VM woke up, but which interrupt was delivered how many times.

At the moment, from Xen's perspective, an event delivery is an event
delivery.  You'd have to manually add some way of classifying an event
as "I/O".

 -George

  parent reply	other threads:[~2010-10-11 11:05 UTC|newest]

Thread overview: 21+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-09-13 21:37 Question about the ability of credit scheduler to handle I/O and CPU intensive VMs Yuehai Xu
2010-09-13 23:29 ` Jeremy Fitzhardinge
2010-09-14  1:38   ` Yuehai Xu
     [not found] ` <AANLkTin9E1m_jFcj4Ak7nB9OxcQynrznpQ_nNPi_U7hN@mail.gmail.com>
2010-09-14 14:58   ` Yuehai Xu
2010-09-30 12:28   ` Yuehai Xu
2010-09-30 13:27     ` George Dunlap
2010-10-05  2:52       ` Yuehai Xu
2010-10-05 14:16         ` George Dunlap
2010-10-05 14:56           ` Yuehai Xu
2010-10-05 15:02             ` George Dunlap
2010-10-07 22:18               ` Yuehai Xu
2010-10-08  0:25                 ` Yuehai Xu
2010-10-08  9:57                   ` George Dunlap
2010-10-08 10:03                     ` George Dunlap
2010-10-08 10:11                       ` George Dunlap
2010-10-10  4:08                     ` Yuehai Xu
2010-10-10  8:30                       ` cendhu
2010-10-11 11:05                       ` George Dunlap [this message]
2010-10-12 12:42                         ` Yuehai Xu
2010-10-18 10:25                           ` George Dunlap
2010-10-05  4:30       ` question about lineat pagetable and mfn_x strongerwill

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=AANLkTinuXsv3FUG6Y1VTdgbFQRVknUjCECN1i5P+xigQ@mail.gmail.com \
    --to=george.dunlap@eu.citrix.com \
    --cc=xen-devel@lists.xensource.com \
    --cc=yhxu@wayne.edu \
    --cc=yuehaixu@gmail.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.