public inbox for linux-mtd@lists.infradead.org
 help / color / mirror / Atom feed
From: Peter Grayson <pgrayson@realmsys.com>
To: dedekind@infradead.org
Cc: linux-mtd@lists.infradead.org
Subject: Re: Great jffs2 speedup
Date: Fri, 30 Sep 2005 14:25:16 -0600	[thread overview]
Message-ID: <1128111916.6926.92.camel@localhost.localdomain> (raw)
In-Reply-To: <1128070714.4267.8.camel@sauron.oktetlabs.ru>

On Fri, 2005-09-30 at 12:58 +0400, Artem B. Bityutskiy wrote:
> Could you please create a 200MB file 'dedekind' (or larger, the larger -
> the better), mount your FS, run 'time stat dedekind' and report how much
> time did that command stat took.

# time dd if=/dev/zero of=/mnt/mtdb2/dedekind bs=1M count=300
300+0 records in
300+0 records out
real    1m 37.08s
user    0m 0.01s
sys     0m 40.64s

# time umount /mnt/mtdb2
real    0m 0.45s
user    0m 0.00s
sys     0m 0.33s

# time mount /mnt/mtdb2 && time stat /mnt/mtdb2/dedekind
real    0m 0.18s
user    0m 0.00s
sys     0m 0.14s
  File: `/mnt/mtdb2/dedekind'
  Size: 314572800       Blocks: 614400     IO Block: 4096   regular file
Device: 1f02h/7938d     Inode: 2           Links: 1
Access: (0644/-rw-r--r--)  Uid: (    0/    root)   Gid: (    0/    root)
Access: 1969-12-31 17:01:29.000000000 -0700
Modify: 1969-12-31 17:03:06.000000000 -0700
Change: 1969-12-31 17:03:06.000000000 -0700
real    0m 9.50s
user    0m 0.00s
sys     0m 4.47s

And again with a bigger file:

# time dd if=/dev/zero of=/mnt/mtdb2/dedekind bs=1M count=600
600+0 records in
600+0 records out
real    3m 6.93s
user    0m 0.02s
sys     1m 19.27s

# time umount /mnt/mtdb2
real    0m 0.81s
user    0m 0.00s
sys     0m 0.58s

# time mount /mnt/mtdb2 && time stat /mnt/mtdb2/dedekind
real    0m 0.32s
user    0m 0.00s
sys     0m 0.26s
  File: `/mnt/mtdb2/dedekind'
  Size: 629145600       Blocks: 1228800    IO Block: 4096   regular file
Device: 1f02h/7938d     Inode: 3           Links: 1
Access: (0644/-rw-r--r--)  Uid: (    0/    root)   Gid: (    0/    root)
Access: 1969-12-31 17:19:56.000000000 -0700
Modify: 1969-12-31 17:19:56.000000000 -0700
Change: 1969-12-31 17:19:56.000000000 -0700
real    0m 18.72s
user    0m 0.00s
sys     0m 8.40s

Yet bigger:

# time dd if=/dev/zero of=/mnt/mtdb2/dedekind bs=1M count=900
900+0 records in
900+0 records out
real    5m 28.55s
user    0m 0.02s
sys     1m 55.58s

# time umount /mnt/mtdb2
real    0m 1.17s
user    0m 0.00s
sys     0m 0.83s

# time mount /mnt/mtdb2 && time stat /mnt/mtdb2/dedekind
real    0m 0.45s
user    0m 0.00s
sys     0m 0.36s
  File: `/mnt/mtdb2/dedekind'
  Size: 943718400       Blocks: 1843200    IO Block: 4096   regular file
Device: 1f02h/7938d     Inode: 4           Links: 1
Access: (0644/-rw-r--r--)  Uid: (    0/    root)   Gid: (    0/    root)
Access: 1969-12-31 17:30:46.000000000 -0700
Modify: 1969-12-31 17:30:46.000000000 -0700
Change: 1969-12-31 17:30:46.000000000 -0700
real    0m 28.31s
user    0m 0.00s
sys     0m 12.93s

So, there seems to be a linear relationship between the time-to-stat and
the file size.

> Also, just after mount of a fully filled FS (again, the larger is your
> FS, the better), run top, and look how much time your cpu is busy by
> executing the GC thread. Basically, you can start writing only after the
> GC thread has stopped working.

I do not have the time to do this test right now.

> I am really curious about the results. 

Me too!

> And another fun is to create a directory with thousands of small (or
> empty) files, remount the FS and run stat on the directory or enter it.
> But this is not that fundamental problem and may be fixed.

I'll try to make some time to do these tests next week.

Pete

  parent reply	other threads:[~2005-09-30 20:25 UTC|newest]

Thread overview: 37+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2005-09-28  9:36 Great jffs2 speedup hinko.kocevar
2005-09-28 10:00 ` Jörn Engel
2005-09-28 15:26   ` hinko.kocevar
2005-09-29  7:53     ` Jörn Engel
2005-09-30 12:26   ` hinko.kocevar
2005-09-29  8:21 ` Ferenc Havasi
2005-09-29  9:34   ` Jörn Engel
2005-09-29  9:44     ` Artem B. Bityutskiy
2005-09-29  9:52     ` Ferenc Havasi
2005-09-29  9:55       ` Jörn Engel
2005-09-29  9:59       ` Artem B. Bityutskiy
2005-09-29 10:12         ` Jörn Engel
2005-09-29 10:21           ` Artem B. Bityutskiy
2005-09-29 10:26             ` Jörn Engel
2005-09-29 11:34               ` Ferenc Havasi
2005-09-29 11:35                 ` Jörn Engel
2005-09-29 11:45                   ` Ferenc Havasi
2005-09-29 11:52                     ` Jörn Engel
2005-09-29 12:39                       ` Josh Boyer
2005-09-29 10:23         ` Ferenc Havasi
2005-09-29 10:29           ` Jörn Engel
2005-09-29 10:45           ` Artem B. Bityutskiy
2005-09-29 11:29             ` Ferenc Havasi
2005-09-29 11:32               ` Artem B. Bityutskiy
2005-09-29 16:10         ` Peter Grayson
2005-09-29 17:45           ` Sergei Sharonov
2005-09-30  4:19             ` Peter Grayson
2005-09-30  8:58               ` Artem B. Bityutskiy
2005-09-30  9:08                 ` Artem B. Bityutskiy
2005-09-30 20:25                 ` Peter Grayson [this message]
2005-10-01  7:01                   ` Artem B. Bityutskiy
2005-09-30 21:15               ` Sergei Sharonov
2005-09-30 23:22                 ` Peter Grayson
2005-10-01  7:43                   ` Artem B. Bityutskiy
2005-09-29 10:15   ` hinko.kocevar
2005-09-29 12:01     ` Ferenc Havasi
2005-09-29 13:07     ` Jörn Engel

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=1128111916.6926.92.camel@localhost.localdomain \
    --to=pgrayson@realmsys.com \
    --cc=dedekind@infradead.org \
    --cc=linux-mtd@lists.infradead.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