From: Alexander Graf <agraf@suse.de>
To: qemu-devel@nongnu.org
Cc: kwolf@redhat.com, hch@lst.de
Subject: [Qemu-devel] [PATCH 0/2] Enable qemu block layer to not flush
Date: Mon, 10 May 2010 23:51:48 +0200 [thread overview]
Message-ID: <1273528310-7051-1-git-send-email-agraf@suse.de> (raw)
Thanks to recent improvements, qemu flushes guest data to disk when the guest
tells us to do so.
This is great if we care about data consistency on host disk failures. In cases
where we don't it just creates additional overhead for no net win. One such use
case is the building of appliances in SUSE Studio. We write the resulting images
out of the build VM, but compress it directly afterwards. So if possible we'd
love to keep it in RAM.
This patchset introduces a new block parameter to -drive called "flush" which
allows a user to disable flushing in odd scenarios like the above. To show the
difference in performance this makes, I have put together a small test case.
Inside the initrd, I call the following piece of code on a 500MB preallocated
vmdk image:
mkfs.ext3 /dev/vda
mkdir -p /mnt
mount /dev/vda /mnt
dd if=/dev/zero of=/mnt/test bs=1M
umount /mnt
sync
halt -fp
With flush=on (default)
real 0m33.597s
user 0m16.453s
sys 0m6.192s
With flush=off
real 0m27.150s
user 0m16.533s
sys 0m5.348s
Alexander Graf (2):
Add no-op aio emulation stub
Add flush=off parameter to -drive
block.c | 18 ++++++++++++++++++
block.h | 5 +++++
block/raw-posix.c | 13 +++++++++++++
qemu-config.c | 3 +++
qemu-options.hx | 3 +++
vl.c | 3 +++
6 files changed, 45 insertions(+), 0 deletions(-)
next reply other threads:[~2010-05-10 21:51 UTC|newest]
Thread overview: 41+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-05-10 21:51 Alexander Graf [this message]
2010-05-10 21:51 ` [Qemu-devel] [PATCH 1/2] Add no-op aio emulation stub Alexander Graf
2010-05-10 21:51 ` [Qemu-devel] [PATCH 2/2] Add flush=off parameter to -drive Alexander Graf
2010-05-11 8:36 ` [Qemu-devel] " Kevin Wolf
2010-05-11 10:55 ` Christoph Hellwig
2010-05-11 12:15 ` Paul Brook
2010-05-11 12:43 ` Anthony Liguori
2010-05-11 13:12 ` Paul Brook
2010-05-11 13:20 ` Anthony Liguori
2010-05-11 13:50 ` Paul Brook
2010-05-11 15:40 ` Anthony Liguori
2010-05-11 15:53 ` Paul Brook
2010-05-11 17:09 ` Anthony Liguori
2010-05-11 22:33 ` Paul Brook
2010-05-11 19:11 ` Avi Kivity
2010-05-11 16:32 ` Jamie Lokier
2010-05-11 17:15 ` Anthony Liguori
2010-05-11 18:13 ` Jamie Lokier
2010-05-11 15:18 ` Alexander Graf
2010-05-11 18:20 ` Jamie Lokier
2010-05-11 21:58 ` Paul Brook
2010-05-11 22:11 ` Paul Brook
2010-05-12 10:09 ` Jamie Lokier
2010-05-17 12:40 ` Christoph Hellwig
2010-05-14 9:16 ` Markus Armbruster
2010-05-17 12:41 ` Christoph Hellwig
2010-05-17 12:42 ` Alexander Graf
2010-05-11 19:04 ` Avi Kivity
2010-05-12 15:05 ` Alexander Graf
2010-05-12 15:36 ` Kevin Wolf
2010-05-12 15:51 ` Alexander Graf
2010-05-11 6:18 ` [Qemu-devel] [PATCH 1/2] Add no-op aio emulation stub Stefan Hajnoczi
2010-05-11 8:29 ` [Qemu-devel] " Kevin Wolf
2010-05-10 21:59 ` [Qemu-devel] [PATCH 0/2] Enable qemu block layer to not flush Anthony Liguori
2010-05-10 22:03 ` Alexander Graf
2010-05-10 22:12 ` Anthony Liguori
2010-05-11 21:48 ` Jamie Lokier
2010-05-12 8:51 ` Stefan Hajnoczi
2010-05-12 9:42 ` Jamie Lokier
2010-05-12 10:43 ` Stefan Hajnoczi
2010-05-12 12:50 ` Jamie Lokier
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=1273528310-7051-1-git-send-email-agraf@suse.de \
--to=agraf@suse.de \
--cc=hch@lst.de \
--cc=kwolf@redhat.com \
--cc=qemu-devel@nongnu.org \
/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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).