mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: Richard Gooch <rgooch@ras.ucalgary.ca>
To: Andrew Morton <akpm@zip.com.au>
Cc: Ben Israel <ben@genesis-one.com>, linux-kernel@vger.kernel.org
Subject: Re: File System Performance
Date: Mon, 12 Nov 2001 12:59:54 -0700	[thread overview]
Message-ID: <200111121959.fACJxsj08462@vindaloo.ras.ucalgary.ca> (raw)
In-Reply-To: <3BF02702.34C21E75@zip.com.au>
In-Reply-To: <00b201c16b81$9d7aaba0$5101a8c0@pbc.adelphia.net> <3BEFF9D1.3CC01AB3@zip.com.au> <00da01c16ba2$96aeda00$5101a8c0@pbc.adelphia.net> <3BF02702.34C21E75@zip.com.au>

Andrew Morton writes:
> Ben Israel wrote:
> > 
> > Andrew
> > 
> >  Thank you very much for your response. I would like to know what ever I can
> > about File Systems that achieve near Raw Disk Transfer Speeds on large file
> > system modifications.
> 
> This is very filesystem-dependent.   Probably the XFS mailing list
> linux-xfs@oss.sgi.com is the place to ask for XFS.
> 
> > What does the "Orlov allocator" do differently?
> 
> The problem which ext2 experiences with your particular workload
> is that it attempts to balance the creation of new directories
> across the filesystem's various "block groups".  There are tens
> or hundreds of these.  ext2 also tries to place files in the same
> block group as their parent directory.
> 
> Consequently, when you untar (or just copy) a directory tree,
> it gets placed all over the partition.  So both reading it and
> writing it requires a lot of seeking.
> 
> That's a fast-growth workload.  A slow-growth workload is
> the normal sort of day-to-day activity where you reqularly
> create and delete files.  The occupancy of the fs grows slowly.
> 
> We are seeing some degradation in performance in the slow-growth
> case with the Orlov algorithm.  But fast-growth is increased a lot.
> 
> The Orlov algorithm (or at least Al's version of it) tries to
> spread top-level directories evenly across the partition, under
> the assumption that these contain unrelated information.  But for
> directories at a lower level, it is more aggressive about placing
> directories in the same block group as their parent.   It _will_
> move into a different block group, but only when it sees that the
> current one is filling up.

Here's an idea: add a "--compact" option to tar, so that it creates
*all* inodes (files and directories alike) in the base directory, and
then renames newly created entries to shuffle them into their correct
positions. That should limit the number of block groups that are used,
right?

It would probably also be a good idea to do that for cp as well, so
that when I do a "cp -al" of a virgin kernel tree, I can keep all the
directory inodes together. It will make a cold diff even faster.

				Regards,

					Richard....
Permanent: rgooch@atnf.csiro.au
Current:   rgooch@ras.ucalgary.ca

  parent reply	other threads:[~2001-11-12 20:00 UTC|newest]

Thread overview: 44+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2001-11-12 13:54 Ben Israel
2001-11-12 16:33 ` Andrew Morton
2001-11-12 17:50   ` Ben Israel
2001-11-12 19:46     ` Andrew Morton
2001-11-12 19:59     ` Richard Gooch [this message]
2001-11-12 23:07       ` Mike Fedyk
2001-11-13  0:04       ` Richard Gooch
2001-11-13  0:08         ` Mike Fedyk
2001-11-13  0:26         ` Richard Gooch
2001-11-13  0:47           ` Mike Castle
2001-11-13  1:28           ` Mike Fedyk
2001-11-13  6:34           ` Richard Gooch
2001-11-13 20:56             ` Andreas Dilger
2001-11-13  7:45         ` Andreas Dilger
2001-11-12 20:06     ` Steve Lord
2001-11-12 20:41       ` Andrew Morton
2001-11-13  0:17         ` Andreas Dilger
2001-11-13  0:40           ` Peter J . Braam
2001-11-13 20:46             ` Andreas Dilger
2001-11-16 22:07               ` Peter J . Braam
2001-11-16 23:14                 ` Mike Fedyk
2001-11-12 21:27       ` Steve Lord
2001-11-12 21:43         ` Andrew Morton
2001-11-12 21:48           ` Linus Torvalds
2001-11-12 22:11             ` Lionel Bouton
2001-11-12 19:41               ` Gérard Roudier
2001-11-12 22:14               ` Linus Torvalds
2001-11-12 22:30                 ` Ragnar Kjørstad
2001-11-12 22:36                 ` Andrew Morton
2001-11-12 23:04                   ` Mike Castle
2001-11-13  9:56                     ` Peter Wächtler
2001-11-13  9:41                 ` Henning P. Schmiedehausen
2001-11-12 22:16             ` Andrew Morton
2001-11-12 22:32               ` Lionel Bouton
2001-11-12 22:45                 ` Alan Cox
2001-11-12 22:39               ` Alan Cox
2001-11-12 22:39                 ` Xavier Bestel
2001-11-12 22:46               ` Mike Castle
2001-11-12 22:26             ` Steve Lord
2001-11-12 21:45         ` Steve Lord
2001-11-12 21:53         ` Lionel Bouton
2001-11-12 16:40 ` Ben Israel
2001-11-12 17:29 ` Andrew Morton
2001-11-12 22:36 Grant Erickson

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=200111121959.fACJxsj08462@vindaloo.ras.ucalgary.ca \
    --to=rgooch@ras.ucalgary.ca \
    --cc=akpm@zip.com.au \
    --cc=ben@genesis-one.com \
    --cc=linux-kernel@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

all inboxes | Powered by JetHome®