[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH v3 1/2] block: allow live commit of active image
From: |
Paolo Bonzini |
Subject: |
Re: [Qemu-devel] [PATCH v3 1/2] block: allow live commit of active image |
Date: |
Wed, 18 Sep 2013 13:46:53 +0200 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:17.0) Gecko/20130805 Thunderbird/17.0.8 |
Il 04/09/2013 14:35, Stefan Hajnoczi ha scritto:
> Changing from 512 KB to 64 KB can affect performance. 8 times as many
> iops may be issued to copy data.
>
> Also, the image's cluster size should really be taken into account.
> Otherwise additional inefficiency will be suffered when we populate a
> 128 KB cluster with a COMMIT_BUFFER_SECTORS (64 KB) write only to
> overwrite the remaining part in the next loop iteration.
>
> This can be solved by setting dirty bitmap granularity to cluster size
> or 64 KB minimum *and* finding continuous runs of dirty bits so larger
> I/Os can be performed by the main loop (up to 512 KB in one request).
At this point, you're basically reinventing the algorithms in
block/mirror.c (even more than this patch is already doing :)).
I wonder if commit-to-active should be internally a separate kind of
job, implemented in block/mirror.c instead of block/commit.c.
Paolo