LKML Archive on lore.kernel.org
help / color / mirror / Atom feed
From: Chris Mason <chris.mason@oracle.com>
To: linux-kernel@vger.kernel.org, linux-fsdevel@vger.kernel.org,
btrfs-devel@oss.oracle.com
Subject: [ANNOUNCE] Btrfs v0.12 released
Date: Wed, 6 Feb 2008 12:00:13 -0500 [thread overview]
Message-ID: <200802061200.14690.chris.mason@oracle.com> (raw)
Hello everyone,
I wasn't planning on releasing v0.12 yet, and it was supposed to have some
initial support for multiple devices. But, I have made a number of
performance fixes and small bug fixes, and I wanted to get them out there
before the (destabilizing) work on multiple-devices took over.
So, here's v0.12. It comes with a shiny new disk format (sorry), but the gain
is dramatically better random writes to existing files. In testing here, the
random write phase of tiobench went from 1MB/s to 30MB/s. The fix was to
change the way back references for file extents were hashed.
Other changes:
Insert and delete multiple items at once in the btree where possible. Back
references added more tree balances, and it showed up in a few benchmarks.
With v0.12, backrefs have no real impact on performance.
Optimize bio end_io routines. Btrfs was spending way too much CPU time in the
bio end_io routines, leading to lock contention and other problems.
Optimize read ahead during transaction commit. The old code was trying to
read far too much at once, which made the end_io problems really stand out.
mount -o ssd option, which clusters file data writes together regardless of
the directory the files belong to. There are a number of other performance
tweaks for SSD, aimed at clustering metadata and data writes to better take
advantage of the hardware.
mount -o max_inline=size option, to override the default max inline file data
size (default is 8k). Any value up to the leaf size is allowed (default
16k).
Simple -ENOSPC handling. Emphasis on simple, but it prevents accidentally
filling the disk most of the time. With enough threads/procs banging on
things, you can still easily crash the box.
-chris
next reply other threads:[~2008-02-06 17:01 UTC|newest]
Thread overview: 34+ messages / expand[flat|nested] mbox.gz Atom feed top
2008-02-06 17:00 Chris Mason [this message]
2008-02-11 1:12 ` David Miller
2008-02-11 13:42 ` Chris Mason
2008-02-12 6:43 ` David Miller
2008-02-12 13:43 ` Chris Mason
2008-02-12 7:21 ` BTRFS partition usage David Miller
2008-02-12 8:11 ` David Miller
2008-02-12 13:49 ` Chris Mason
2008-02-12 14:00 ` Jan Engelhardt
2008-02-12 14:08 ` Chris Mason
2008-02-12 14:21 ` Jan Engelhardt
2008-02-12 14:35 ` Chris Mason
2008-02-12 15:04 ` Jan Engelhardt
2008-02-12 16:17 ` Chris Mason
2008-02-12 23:38 ` David Miller
2008-02-12 23:42 ` Jan Engelhardt
2008-02-13 1:09 ` David Miller
2008-02-13 1:22 ` Rene Herman
2008-02-12 23:35 ` David Miller
2008-02-13 7:02 ` Christoph Hellwig
2008-02-12 23:34 ` David Miller
2008-02-12 23:33 ` David Miller
2008-02-13 2:10 ` Jeff Garzik
2008-02-14 0:51 ` Szabolcs Szakacsits
2008-02-12 23:26 ` David Miller
2008-02-12 23:39 ` Jan Engelhardt
2008-02-13 1:08 ` David Miller
2008-02-13 1:25 ` Bryan Henderson
2008-02-12 23:28 ` David Miller
2008-02-13 0:45 ` Theodore Tso
2008-02-12 20:50 ` David Miller
2008-02-12 9:23 ` CRC32C big endian bugs David Miller
2008-02-12 21:55 ` BTRFS only works with PAGE_SIZE <= 4K David Miller
2008-02-12 22:03 ` Chris Mason
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=200802061200.14690.chris.mason@oracle.com \
--to=chris.mason@oracle.com \
--cc=btrfs-devel@oss.oracle.com \
--cc=linux-fsdevel@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--subject='Re: [ANNOUNCE] Btrfs v0.12 released' \
/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
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).