linux-btrfs.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: "Austin S. Hemmelgarn" <ahferroin7@gmail.com>
To: "Ellis H. Wilson III" <ellisw@panasas.com>,
	Hans van Kranenburg <hans.van.kranenburg@mendix.com>,
	Tomasz Pala <gotar@polanet.pl>
Cc: linux-btrfs@vger.kernel.org
Subject: Re: btrfs-cleaner / snapshot performance analysis
Date: Mon, 12 Feb 2018 13:07:07 -0500	[thread overview]
Message-ID: <300f0068-d83a-5eeb-e0e0-039badcea6f4@gmail.com> (raw)
In-Reply-To: <41d6badc-90d4-54f9-085e-fd75afde74eb@panasas.com>

On 2018-02-12 11:39, Ellis H. Wilson III wrote:
> On 02/12/2018 11:02 AM, Austin S. Hemmelgarn wrote:
>> BTRFS in general works fine at that scale, dependent of course on the 
>> level of concurrent access you need to support.  Each tree update 
>> needs to lock a bunch of things in the tree itself, and having large 
>> numbers of clients writing to the same set of files concurrently can 
>> cause lock contention issues because of this, especially if all of 
>> them are calling fsync() or fdatasync() regularly.  These issues can 
>> be mitigated by segregating workloads into their own subvolumes (each 
>> subvolume is a mostly independent filesystem tree), but it sounds like 
>> you're already doing that, so I don't think that would be an issue for 
>> you.
> Hmm...I'll think harder about this.  There is potential for us to 
> artificially divide access to files across subvolumes automatically 
> because of the way we are using BTRFS as a backing store for our 
> parallel file system.  So far even with around 1000 threads across about 
> 10 machines accessing BTRFS via our parallel filesystem over the wire 
> we've not seen issues, but if we do I have some ways out I've not 
> explored yet.  Thanks!
For what it's worth, most of the issues I've personally seen with 
parallel performance involved very heavy use of fsync(), or lots of 
parallel calls to stat() and statvfs() happening while files are also 
being written to, so it may just be the way you happen to be doing 
things just doesn't cause issues.


  reply	other threads:[~2018-02-12 18:07 UTC|newest]

Thread overview: 22+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-02-09 16:45 btrfs-cleaner / snapshot performance analysis Ellis H. Wilson III
2018-02-09 17:10 ` Peter Grandi
2018-02-09 20:36 ` Hans van Kranenburg
2018-02-10 18:29   ` Ellis H. Wilson III
2018-02-10 22:05     ` Tomasz Pala
2018-02-11 15:59       ` Ellis H. Wilson III
2018-02-11 18:24         ` Hans van Kranenburg
2018-02-12 15:37           ` Ellis H. Wilson III
2018-02-12 16:02             ` Austin S. Hemmelgarn
2018-02-12 16:39               ` Ellis H. Wilson III
2018-02-12 18:07                 ` Austin S. Hemmelgarn [this message]
2018-02-13 13:34             ` E V
2018-02-11  1:02     ` Hans van Kranenburg
2018-02-11  9:31       ` Andrei Borzenkov
2018-02-11 17:25         ` Adam Borowski
2018-02-11 16:15       ` Ellis H. Wilson III
2018-02-11 18:03         ` Hans van Kranenburg
2018-02-12 14:45           ` Ellis H. Wilson III
2018-02-12 17:09             ` Hans van Kranenburg
2018-02-12 17:38               ` Ellis H. Wilson III
2018-02-11  6:40 ` Qu Wenruo
2018-02-14  1:14   ` Darrick J. Wong

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=300f0068-d83a-5eeb-e0e0-039badcea6f4@gmail.com \
    --to=ahferroin7@gmail.com \
    --cc=ellisw@panasas.com \
    --cc=gotar@polanet.pl \
    --cc=hans.van.kranenburg@mendix.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).