qemu-block
[Top][All Lists]
Advanced

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

Re: [Qemu-block] block migration and MAX_IN_FLIGHT_IO


From: Peter Lieven
Subject: Re: [Qemu-block] block migration and MAX_IN_FLIGHT_IO
Date: Tue, 6 Mar 2018 17:14:32 +0100
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.2.1

Am 05.03.2018 um 15:52 schrieb Dr. David Alan Gilbert:
> * Peter Lieven (address@hidden) wrote:
>> Am 05.03.2018 um 12:45 schrieb Stefan Hajnoczi:
>>> On Thu, Feb 22, 2018 at 12:13:50PM +0100, Peter Lieven wrote:
>>>> I stumbled across the MAX_INFLIGHT_IO field that was introduced in 2015 
>>>> and was curious what was the reason
>>>> to choose 512MB as readahead? The question is that I found that the source 
>>>> VM gets very unresponsive I/O wise
>>>> while the initial 512MB are read and furthermore seems to stay 
>>>> unreasponsive if we choose a high migration speed
>>>> and have a fast storage on the destination VM.
>>>>
>>>> In our environment I modified this value to 16MB which seems to work much 
>>>> smoother. I wonder if we should make
>>>> this a user configurable value or define a different rate limit for the 
>>>> block transfer in bulk stage at least?
>>> I don't know if benchmarks were run when choosing the value.  From the
>>> commit description it sounds like the main purpose was to limit the
>>> amount of memory that can be consumed.
>>>
>>> 16 MB also fulfills that criteria :), but why is the source VM more
>>> responsive with a lower value?
>>>
>>> Perhaps the issue is queue depth on the storage device - the block
>>> migration code enqueues up to 512 MB worth of reads, and guest I/O has
>>> to wait?
>> That is my guess. Especially if the destination storage is faster we 
>> basically alsways have
>> 512 I/Os in flight on the source storage.
>>
>> Does anyone mind if the reduce that value to 16MB or do we need a better 
>> mechanism?
> We've got migration-parameters these days; you could connect it to one
> of those fairly easily I think.
> Try: grep -i 'cpu[-_]throttle[-_]initial'  for an example of one that's
> already there.
> Then you can set it to whatever you like.

I will have a look at this.

Thank you,
Peter

>
> Dave
>
>> Peter
>>
>>
> --
> Dr. David Alan Gilbert / address@hidden / Manchester, UK






reply via email to

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