[libvirt] [PATCH] Adjust block size used by dd to speed QEMU domain save operations.

Laine Stump laine at laine.org
Fri Jun 4 12:27:12 UTC 2010


On 06/04/2010 04:28 AM, Daniel P. Berrange wrote:
> On Thu, Jun 03, 2010 at 11:57:33PM -0400, Laine Stump wrote:
>> See https://bugzilla.redhat.com/show_bug.cgi?id=599091
>>
>> Saving a paused 512MB domain took 3m47s with the old block size of 512
>> bytes. Changing the block size to 1024*1024 decreased the time to 56
>> seconds. (Doubling again to 2048*1024 yielded 0 improvement; lowering
>> to 512k increased the save time to 1m10s, about 20%)
>
> Surely we should have gone for 1024*1024  in this case ?

Of course! I accidentally committed before hitting save on the buffer
where I switched it back to 1024 :-P (if this mail were html-ized, the
emoticon would be red with embarrassment)

>
> NB, since our XML header gets rounded up to a multiple of the block
> size, smaller is better, because we're filling the disk with zeros
> here :-)

Yep, that's why I tested all the different sizes. If only I'd stayed
awake until the final step of sending the mail...

So I assume you're okay with what I intended (see below)?

---
 src/qemu/qemu_monitor.h |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/src/qemu/qemu_monitor.h b/src/qemu/qemu_monitor.h
index 1870b22..dd12620 100644
--- a/src/qemu/qemu_monitor.h
+++ b/src/qemu/qemu_monitor.h
@@ -261,7 +261,7 @@ int qemuMonitorMigrateToCommand(qemuMonitorPtr mon,
                                 unsigned int background,
                                 const char * const *argv);
 
-# define QEMU_MONITOR_MIGRATE_TO_FILE_BS 512llu
+# define QEMU_MONITOR_MIGRATE_TO_FILE_BS (1024llu * 1024)
 
 int qemuMonitorMigrateToFile(qemuMonitorPtr mon,
                              unsigned int background,
-- 
1.7.0.1




More information about the libvir-list mailing list