From: "Dr. David Alan Gilbert" <dgilbert@redhat.com>
To: Peter Lieven <pl@kamp.de>
Cc: "qemu-devel@nongnu.org" <qemu-devel@nongnu.org>,
Juan Quintela <quintela@redhat.com>, Fam Zheng <famz@redhat.com>,
Stefan Hajnoczi <stefanha@redhat.com>,
qemu block <qemu-block@nongnu.org>,
jjherne@linux.vnet.ibm.com
Subject: Re: [Qemu-devel] Block Migration and CPU throttling
Date: Tue, 19 Sep 2017 15:38:30 +0100 [thread overview]
Message-ID: <20170919143829.GH2107@work-vm> (raw)
In-Reply-To: <6cc4a99c-0212-6b7b-4a12-3e898215bea9@kamp.de>
* Peter Lieven (pl@kamp.de) wrote:
> Hi,
>
> I just noticed that CPU throttling and Block Migration don't work together very well.
> During block migration the throttling heuristic detects that we obviously make no progress
> in ram transfer. But the reason is the running block migration and not a too high dirty pages rate.
>
> The result is that any VM is throttled by 99% during block migration.
Hmm that's unfortunate; do you have a bandwidth set lower than your
actual network connection? I'm just wondering if it's actually going
between the block and RAM iterative sections or getting stuck in ne.
> I wonder what the best way would be fix this. I came up with the following ideas so far:
>
> - disable throttling while block migration is in bulk stage
mig_throttle_guest_down is currently in migration/ram.c
so however we do it, we've got to add an 'inhibit' that
block.c could set (I suggest a counter so that it could
be set by a few things).
> - check if absolute number of num_dirty_pages_period crosses a threshold and not if its just
> greater than 50% of transferred bytes
> - check if migration_dirty_pages > 0. This slows down throttling, but does not avoid it completely.
An interesting question is whether you want to inhibit in the non-bulk
stage if IO writes are happening too quickly to keep up.
Dave
>
> Peter
--
Dr. David Alan Gilbert / dgilbert@redhat.com / Manchester, UK
next prev parent reply other threads:[~2017-09-19 14:39 UTC|newest]
Thread overview: 16+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-09-19 13:36 [Qemu-devel] Block Migration and CPU throttling Peter Lieven
2017-09-19 14:38 ` Dr. David Alan Gilbert [this message]
2017-09-19 14:40 ` Peter Lieven
2017-09-19 14:41 ` Dr. David Alan Gilbert
2017-09-20 19:15 ` Peter Lieven
2017-09-21 12:36 ` Dr. David Alan Gilbert
2017-09-21 12:42 ` Peter Lieven
2017-10-12 13:41 ` Peter Lieven
2017-12-12 17:05 ` Dr. David Alan Gilbert
2017-12-13 16:26 ` Peter Lieven
2018-02-06 11:46 ` Peter Lieven
2018-02-07 18:29 ` Dr. David Alan Gilbert
2018-02-07 20:56 ` Peter Lieven
2018-02-16 20:20 ` Dr. David Alan Gilbert
2017-09-19 14:41 ` Paolo Bonzini
2017-09-20 19:16 ` Peter Lieven
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=20170919143829.GH2107@work-vm \
--to=dgilbert@redhat.com \
--cc=famz@redhat.com \
--cc=jjherne@linux.vnet.ibm.com \
--cc=pl@kamp.de \
--cc=qemu-block@nongnu.org \
--cc=qemu-devel@nongnu.org \
--cc=quintela@redhat.com \
--cc=stefanha@redhat.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.