qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] Block Migration and CPU throttling


From: Peter Lieven
Subject: Re: [Qemu-devel] Block Migration and CPU throttling
Date: Thu, 12 Oct 2017 15:41:52 +0200
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.3.0

Am 21.09.2017 um 14:36 schrieb Dr. David Alan Gilbert:
* Peter Lieven (address@hidden) wrote:
Am 19.09.2017 um 16:41 schrieb Dr. David Alan Gilbert:
* Peter Lieven (address@hidden) wrote:
Am 19.09.2017 um 16:38 schrieb Dr. David Alan Gilbert:
* Peter Lieven (address@hidden) 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.
It happens also if source and dest are on the same machine and speed is set to 
100G.
But does it happen if they're not and the speed is set low?
Yes, it does. I noticed it in our test environment between different nodes with 
a 10G
link in between. But its totally clear why it happens. During block migration 
we transfer
all dirty memory pages in each round (if there is moderate memory load), but 
all dirty
pages are obviously more than 50% of the transferred ram in that round.
It is more exactly 100%. But the current logic triggers on this condition.

I think I will go forward and send a patch which disables auto converge during
block migration bulk stage.
Yes, that's fair;  it probably would also make sense to throttle the RAM
migration during the block migration bulk stage, since the chances are
it's not going to get far.  (I think in the nbd setup, the main
migration process isn't started until the end of bulk).

Catching up with the idea of delaying ram migration until block bulk has 
completed.
What do you think is the easiest way to achieve this?

Peter



reply via email to

[Prev in Thread] Current Thread [Next in Thread]