From: Chris Mason <clm@fb.com>
To: Liu Bo <bo.li.liu@oracle.com>
Cc: <linux-btrfs@vger.kernel.org>
Subject: Re: Horrible dbench performance
Date: Mon, 14 Sep 2015 15:31:27 -0400 [thread overview]
Message-ID: <20150914193126.GC11307@ret.masoncoding.com> (raw)
In-Reply-To: <20150914152820.GA25610@localhost.localdomain>
On Mon, Sep 14, 2015 at 11:28:21PM +0800, Liu Bo wrote:
> Hi,
>
> Both [1] and [2] had run dbench on btrfs with fast storage, and
> showed bad numbers, I got an impression that after refractoring btree lock to
> smart rwlock, we have mitigated this issue..
>
> Not got a fast-enough ssd handy, does anyone confirm the result showed
> in those link?
>
> [1]:https://lkml.org/lkml/2015/4/29/793
> [2]:https://lkml.org/lkml/2015/8/21/22
>
Taking a quick look, its not clear to me which operation the latency
number corresponds to. I think the sources are picking the worst
latency that any of the children see, and since there are a number of
fsyncs as part of each run, my guess is that our fsync is ending up
slower than the others.
If you just run dbench with one writer on my machine, its ~2x faster
than XFS in tput with half the latency.
If you go up to 200 writers, xfs cruises along at 1,100MB/s and btrfs is
pegged at 281MB/s. All the CPUs are at 100% system time, all hitting
lock contention on the root of the btree.
If you create a subvolume for each of the clients, btrfs goes up to
3600MB/s and latencies about 3x of XFS. It runs flat out that way until
it fills the drive.
If someone wants to dive into the latencies, that would be great. It's
probably fsync, and it's probably CPU bound because Josef changed things
around to do inline crcs (which is the right answer imho).
-chris
next prev parent reply other threads:[~2015-09-14 19:31 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-09-14 15:28 Horrible dbench performance Liu Bo
2015-09-14 15:34 ` Josef Bacik
2015-09-14 19:31 ` Chris Mason [this message]
2015-09-14 23:54 ` Liu Bo
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=20150914193126.GC11307@ret.masoncoding.com \
--to=clm@fb.com \
--cc=bo.li.liu@oracle.com \
--cc=linux-btrfs@vger.kernel.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).