All of lore.kernel.org
 help / color / mirror / Atom feed
From: Paolo Bonzini <pbonzini@redhat.com>
To: "Edgar E. Iglesias" <edgar.iglesias@gmail.com>
Cc: qemu-devel@nongnu.org
Subject: [Qemu-devel] Re: [PATCH 0/4] Improve -icount, fix it with iothread
Date: Wed, 23 Feb 2011 11:25:54 +0100	[thread overview]
Message-ID: <4D64E0B2.3050900@redhat.com> (raw)
In-Reply-To: <20110223101806.GA27880@edde.se.axis.com>

On 02/23/2011 11:18 AM, Edgar E. Iglesias wrote:
> Sorry, I don't know the code well enough to give any sensible feedback
> on patch 2 - 4. I did test them with some of my guests and things seem
> to be OK with them but quite a bit slower.
> I saw around 10 - 20% slowdown with a cris guest and -icount 10.
>
> The slow down might be related to the issue with super slow icount together
> with iothread (adressed by Marcelos iothread timeout patch).

No, this supersedes Marcelo's patch.  10-20% doesn't seem comparable to 
"looks like it deadlocked" anyway.  Also, Jan has ideas on how to remove 
the synchronization overhead in the main loop for TCG+iothread.

Have you tested without iothread too, both to check the speed and to 
ensure this introduces no regressions?

> >  With these patches, iothread "-icount N" doesn't work when the actual
> >  execution speed cannot keep up with the requested speed; the execution
> >  in that case is not deterministic.  It works when the requested speed
> >  is slow enough.
>
> Sorry, would you mind explaning this a bit?

-icount 0 doesn't give 1000 BogoMIPS unless the machine is fast enough 
to sustain it.  But that's a bug.  These patches are meant to be a start.

> For example, if I have a machine and guest sw that does no IO. It runs
> the CPU and only uses devices that use the virtual time (e.g timers
> and peripherals that compute stuff). Can I expect the guest (with
> fixed icount speed "-icount N") to run deterministically regardless of
> host speed?

Right now, only if the N is large enough for the host machine to sustain 
that speed.

Paolo

  reply	other threads:[~2011-02-23 10:26 UTC|newest]

Thread overview: 15+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-02-21  8:51 [Qemu-devel] [PATCH 0/4] Improve -icount, fix it with iothread Paolo Bonzini
2011-02-21  8:51 ` [Qemu-devel] [PATCH 1/4] do not use qemu_icount_delta in the !use_icount case Paolo Bonzini
2011-02-21  8:51 ` [Qemu-devel] [PATCH 2/4] qemu_next_deadline should not consider host-time timers Paolo Bonzini
2011-02-21  8:51 ` [Qemu-devel] [PATCH 3/4] rewrite accounting of wait time to the vm_clock Paolo Bonzini
2011-02-21  8:51 ` [Qemu-devel] [PATCH 4/4] inline qemu_icount_delta Paolo Bonzini
2011-02-23 10:18 ` [Qemu-devel] Re: [PATCH 0/4] Improve -icount, fix it with iothread Edgar E. Iglesias
2011-02-23 10:25   ` Paolo Bonzini [this message]
2011-02-23 11:08     ` Edgar E. Iglesias
2011-02-23 11:39       ` Jan Kiszka
2011-02-23 12:40         ` Edgar E. Iglesias
2011-02-23 12:45           ` Jan Kiszka
2011-02-25 19:33         ` Paolo Bonzini
2011-02-23 12:42       ` Paolo Bonzini
2011-02-23 16:27         ` Edgar E. Iglesias
2011-02-23 16:32           ` Paolo Bonzini

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=4D64E0B2.3050900@redhat.com \
    --to=pbonzini@redhat.com \
    --cc=edgar.iglesias@gmail.com \
    --cc=qemu-devel@nongnu.org \
    /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.