qemu-devel
[Top][All Lists]
Advanced

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

Re: [Qemu-devel] [PATCH 1/4] block: add enable_write_cache flag


From: Anthony Liguori
Subject: Re: [Qemu-devel] [PATCH 1/4] block: add enable_write_cache flag
Date: Wed, 02 Sep 2009 08:13:52 -0500
User-agent: Thunderbird 2.0.0.23 (X11/20090825)

Christoph Hellwig wrote:
On Mon, Aug 31, 2009 at 05:53:23PM -0500, Anthony Liguori wrote:
I think we should pity our poor users and avoid adding yet another obscure option that is likely to be misunderstood.

Can someone do some benchmarking with cache=writeback and fdatasync first and quantify what the real performance impact is?

Some preliminary numbers because they are very interesting.  Note that
his is on a raid controller, not cheap ide disks.  To make up for that
I used an image file on ext3, which due to it's horrible fsync
performance should be kind of a worst case.  All these patches are
with Linux 2.6.31-rc8 + my various barrier fixes on guest and host,
using ext3 with barrier=1 on both.

Does barrier=0 make a performance difference? IOW, would the typical default ext3 deployment show worse behavior?

A kernel defconfig compile takes between 9m40s and 9m42s with
data=writeback and barrieres disabled, and with fdatasync barriers
enabled it actually is minimally faster,

If fdatasync different than fsync on ext3? Does it result in a full metadata commit?

If we think these numbers make sense, then I'd vote for enabling fdatasync in master and we'll see if there are any corner cases.

 between 9m38s and 9m39s
(given that I've only done three runs each this might fall under
the boundary for measurement tolerances).

For comparism the raw block device nodes with cache=none (just one run)
is 9m36.759s, which is not far apart.  A completely native run is
7m39.326, btw - and I fear much of the slowdown in KVM isn't I/O
related.

If you're on pre-NHM or BCN then the slowdown from shadow paging would be expected.

Regards,

Anthony Liguori




reply via email to

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