Thread (41 messages) 41 messages, 11 authors, 2008-05-29

Re: [PATCH 0/4] (RESEND) ext3[34] barrier changes

From: Jamie Lokier <hidden>
Date: 2008-05-16 22:30:23
Also in: linux-fsdevel, lkml

Andrew Morton wrote:
quoted
A collection of patches to make ext3 & 4 use barriers by
default, and to call blkdev_issue_flush on fsync if they
are enabled.
Last time this came up lots of workloads slowed down by 30% so I
dropped the patches in horror.
Apart from batching larger journal commits, I thought of another way
which might improve write performance with barriers.

Basically, right now a barrier prevents any write I/Os from being
moved before or after it in the elevator, as well as issuing commands
itself.

It may be that relaxing barriers to allow moving writes when it's fine
will allow the elevator to schedule writes to reduce seeking?

A clear example of when it's fine is data=ordered, overwriting data in
a file.  Those data writes don't have to be ordered against other
filesystem activity which is triggering journal commits.  So they
could be moved around barrier ops, if the elevator deems that would
reduce seeks or to coalesce ops.

Similar arguments apply to moving writes past fsync() flushes, but the
rules are a bit different.

-- Jamie

Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help