From: Marc MERLIN <marc@merlins.org>
To: Chris Mason <chris.mason@fusionio.com>,
"linux-btrfs@vger.kernel.org" <linux-btrfs@vger.kernel.org>
Subject: Re: How can btrfs take 23sec to stat 23K files from an SSD?
Date: Fri, 27 Jul 2012 11:42:39 -0700 [thread overview]
Message-ID: <20120727184238.GA6713@merlins.org> (raw)
In-Reply-To: <20120727110835.GA6933@shiny>
On Fri, Jul 27, 2012 at 07:08:35AM -0400, Chris Mason wrote:
> On Mon, Jul 23, 2012 at 12:42:03AM -0600, Marc MERLIN wrote:
> >
> > 22 seconds for 15K files on an SSD is super slow and being 5 times
> > slower than a spinning disk with the same data.
> > What's going on?
>
> Hi Marc,
>
> The easiest way to figure out is with latencytop. I'd either run the
> latencytop gui or use the latencytop -c patch which sends a text dump to
> the console.
>
> This is assuming that you're not pegged at 100% CPU...
>
> https://oss.oracle.com/~mason/latencytop.patch
Thanks for the patch, and yes I can confirm I'm definitely not pegged on CPU
(not even close and I get the same problem with unencrypted filesystem, actually
du -sh is exactly the same speed on encrypted and unecrypted).
Here's the result I think you were looking for. I'm not good at reading this,
but hopefully it tells you something useful :)
The full run is here if that helps:
http://marc.merlins.org/tmp/latencytop.txt
Process du (6748) Total: 4280.5 msec
Reading directory content 15.2 msec 11.0 %
sleep_on_page wait_on_page_bit read_extent_buffer_pages
btree_read_extent_buffer_pages.constprop.110 read_tree_block
read_block_for_search.isra.32 btrfs_next_leaf
btrfs_real_readdir vfs_readdir sys_getdents system_call_fastpath
[sleep_on_page] 13.5 msec 88.2 %
sleep_on_page wait_on_page_bit read_extent_buffer_pages
btree_read_extent_buffer_pages.constprop.110 read_tree_block
read_block_for_search.isra.32 btrfs_search_slot
btrfs_lookup_csum __btrfs_lookup_bio_sums
btrfs_lookup_bio_sums btrfs_submit_compressed_read btrfs_submit_bio_hook
Page fault 12.9 msec 0.6 %
sleep_on_page_killable wait_on_page_bit_killable
__lock_page_or_retry filemap_fault __do_fault handle_pte_fault
handle_mm_fault do_page_fault page_fault
Executing a program 7.1 msec 0.2 %
sleep_on_page_killable __lock_page_killable
generic_file_aio_read do_sync_read vfs_read kernel_read
prepare_binprm do_execve_common.isra.27 do_execve sys_execve
stub_execve
Process du (6748) Total: 9517.4 msec
[sleep_on_page] 23.0 msec 82.8 %
sleep_on_page wait_on_page_bit read_extent_buffer_pages
btree_read_extent_buffer_pages.constprop.110 read_tree_block
read_block_for_search.isra.32 btrfs_search_slot
btrfs_lookup_inode btrfs_iget btrfs_lookup_dentry btrfs_lookup
__lookup_hash
Reading directory content 13.2 msec 17.2 %
sleep_on_page wait_on_page_bit read_extent_buffer_pages
btree_read_extent_buffer_pages.constprop.110 read_tree_block
read_block_for_search.isra.32 btrfs_search_slot
btrfs_real_readdir vfs_readdir sys_getdents system_call_fastpath
Process du (6748) Total: 9524.0 msec
[sleep_on_page] 17.1 msec 88.5 %
sleep_on_page wait_on_page_bit read_extent_buffer_pages
btree_read_extent_buffer_pages.constprop.110 read_tree_block
read_block_for_search.isra.32 btrfs_search_slot
btrfs_lookup_inode btrfs_iget btrfs_lookup_dentry btrfs_lookup
__lookup_hash
Reading directory content 16.0 msec 11.5 %
sleep_on_page wait_on_page_bit read_extent_buffer_pages
btree_read_extent_buffer_pages.constprop.110 read_tree_block
read_block_for_search.isra.32 btrfs_search_slot
btrfs_real_readdir vfs_readdir sys_getdents system_call_fastpath
--
"A mouse is a device used to point at the xterm you want to type in" - A.S.R.
Microsoft is to operating systems ....
.... what McDonalds is to gourmet cooking
Home page: http://marc.merlins.org/
next prev parent reply other threads:[~2012-07-27 18:42 UTC|newest]
Thread overview: 53+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-01-30 0:37 brtfs on top of dmcrypt with SSD. No corruption iff write cache off? Marc MERLIN
2012-02-01 17:56 ` Chris Mason
2012-02-02 3:23 ` Marc MERLIN
2012-02-02 12:42 ` Chris Mason
[not found] ` <20120202152722.GI12429@merlins.org>
2012-02-12 22:32 ` Marc MERLIN
2012-02-12 23:47 ` Milan Broz
2012-02-13 0:14 ` Marc MERLIN
2012-02-15 15:42 ` Calvin Walton
2012-02-15 16:55 ` Marc MERLIN
2012-02-15 16:59 ` Hugo Mills
2012-02-22 10:28 ` Justin Ossevoort
2012-02-22 11:07 ` Hugo Mills
2012-02-16 6:33 ` Chris Samuel
2012-02-18 12:33 ` Martin Steigerwald
2012-02-18 12:39 ` Martin Steigerwald
2012-02-18 12:49 ` Martin Steigerwald
2012-07-18 18:13 ` brtfs on top of dmcrypt with SSD -> Trim or no Trim Marc MERLIN
2012-07-18 20:04 ` Fajar A. Nugraha
2012-07-18 20:37 ` Marc MERLIN
2012-07-18 21:34 ` Clemens Eisserer
2012-07-18 21:48 ` Marc MERLIN
2012-07-18 21:49 ` Martin Steigerwald
2012-07-18 22:04 ` Marc MERLIN
2012-07-19 10:40 ` Martin Steigerwald
2012-07-22 18:58 ` brtfs on top of dmcrypt with SSD -> ssd or nossd + crypt performance? Marc MERLIN
2012-07-22 19:35 ` Martin Steigerwald
2012-07-22 19:43 ` Martin Steigerwald
2012-07-22 20:44 ` Marc MERLIN
2012-07-22 22:41 ` brtfs on top of dmcrypt with SSD -> file access 5x slower than spinning disk Marc MERLIN
2012-07-23 6:42 ` How can btrfs take 23sec to stat 23K files from an SSD? Marc MERLIN
2012-07-24 7:56 ` Martin Steigerwald
2012-07-27 4:40 ` Marc MERLIN
2012-07-27 11:08 ` Chris Mason
2012-07-27 18:42 ` Marc MERLIN [this message]
[not found] ` <20120801053042.GG12695@merlins.org>
2012-08-01 6:01 ` Marc MERLIN
2012-08-01 6:08 ` Fajar A. Nugraha
2012-08-01 6:21 ` Marc MERLIN
2012-08-01 21:57 ` Martin Steigerwald
2012-08-02 5:07 ` Marc MERLIN
2012-08-02 11:18 ` Martin Steigerwald
2012-08-02 17:39 ` Marc MERLIN
2012-08-02 20:20 ` Martin Steigerwald
2012-08-02 20:44 ` Marc MERLIN
2012-08-02 21:21 ` Martin Steigerwald
2012-08-02 21:49 ` Marc MERLIN
2012-08-03 18:45 ` Martin Steigerwald
2012-08-16 7:45 ` Marc MERLIN
2012-08-02 11:25 ` Martin Steigerwald
2012-08-01 6:36 ` Chris Samuel
2012-08-01 6:40 ` Marc MERLIN
2012-02-18 16:07 ` brtfs on top of dmcrypt with SSD. No corruption iff write cache off? Marc MERLIN
2012-02-19 0:53 ` Clemens Eisserer
-- strict thread matches above, loose matches on Subject: below --
2012-07-24 6:18 How can btrfs take 23sec to stat 23K files from an SSD? Marc MERLIN
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=20120727184238.GA6713@merlins.org \
--to=marc@merlins.org \
--cc=chris.mason@fusionio.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).