From: Marc MERLIN <marc@merlins.org>
To: linux-btrfs@vger.kernel.org
Subject: How can btrfs take 23sec to stat 23K files from an SSD?
Date: Sun, 22 Jul 2012 23:42:03 -0700 [thread overview]
Message-ID: <20120723064202.GB6931@merlins.org> (raw)
In-Reply-To: <20120722224145.GC12951@merlins.org>
I just realized that the older thread got a bit confusing, so I'll keep
problems separate and make things simpler :)
On an _unencrypted_ partition on the SSD, running du -sh on a directory
with 15K files, takes 23 seconds on unencrypted SSD and 4 secs on
encrypted spinning drive, both with a similar btrfs filesystem, and
the same kernel (3.4.4).
Unencrypted btrfs on SSD:
gandalfthegreat:~# mount -o compress=lzo,discard,nossd,space_cache,noatime /dev/sda2 /mnt/mnt2
gandalfthegreat:/mnt/mnt2# echo 3 > /proc/sys/vm/drop_caches; time du -sh src
514M src
real 0m22.667s
Encrypted btrfs on spinning drive of the same src directory:
gandalfthegreat:/var/local# echo 3 > /proc/sys/vm/drop_caches; time du -sh src
514M src
real 0m3.881s
I've run this many times and get the same numbers.
I've tried deadline and noop on /dev/sda (the SSD) and du is just as slow.
I also tried with:
- space_cache and nospace_cache
- ssd and nossd
- noatime didn't seem to help even though I was hopeful on this one.
In all cases, I get:
gandalfthegreat:/mnt/mnt2# echo 3 > /proc/sys/vm/drop_caches; time du -sh src
514M src
real 0m22.537s
I'm having the same slow speed on 2 btrfs filesystems on the same SSD.
One is encrypted, the other one isnt:
Label: 'btrfs_pool1' uuid: d570c40a-4a0b-4d03-b1c9-cff319fc224d
Total devices 1 FS bytes used 144.74GB
devid 1 size 441.70GB used 195.04GB path /dev/dm-0
Label: 'boot' uuid: 84199644-3542-430a-8f18-a5aa58959662
Total devices 1 FS bytes used 2.33GB
devid 1 size 25.00GB used 5.04GB path /dev/sda2
If instead of stating a bunch of files, I try reading a big file, I do get speeds
that are quite fast (253MB/s and 423MB/s).
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?
Thanks,
Marc
--
"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-23 6:42 UTC|newest]
Thread overview: 69+ 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
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-02-18 16:07 ` Marc MERLIN
2012-02-19 0:53 ` Clemens Eisserer
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 ` Marc MERLIN [this message]
2012-07-24 7:56 ` How can btrfs take 23sec to stat 23K files from an SSD? Martin Steigerwald
2012-07-27 4:40 ` Marc MERLIN
2012-07-27 11:08 ` Chris Mason
2012-07-27 18:42 ` Marc MERLIN
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
-- strict thread matches above, loose matches on Subject: below --
2012-07-24 6:18 Marc MERLIN
2012-07-25 15:45 du -s src is a lot slower on SSD than spinning disk in the same laptop Marc MERLIN
[not found] ` <alpine.LFD.2.00.1207252023080.4340@(none)>
2012-07-25 23:38 ` Marc MERLIN
2012-07-26 3:32 ` Ted Ts'o
2012-07-26 3:35 ` Marc MERLIN
2012-07-26 6:54 ` Marc MERLIN
2012-08-01 5:30 ` Marc MERLIN
2012-08-01 8:18 ` Spelic
2012-08-16 7:50 ` Marc MERLIN
[not found] ` <502CC2A2.4010506@shiftmail.org>
2012-08-16 17:55 ` Marc MERLIN
2012-09-05 16:52 ` ext4 crash with 3.5.2 in ext4_ext_remove_space Marc MERLIN
2012-09-05 17:50 ` Lukáš Czerner
2012-09-05 17:53 ` Marc MERLIN
2012-09-06 4:24 ` Marc MERLIN
2012-09-07 15:19 ` Marc MERLIN
2012-09-07 15:39 ` Lukáš Czerner
2012-09-07 15:51 ` 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=20120723064202.GB6931@merlins.org \
--to=marc@merlins.org \
--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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.