From: Hans Reiser <reiser@namesys.com>
To: tridge@samba.org
Cc: linux-kernel@vger.kernel.org,
Reiserfs developers mail-list <Reiserfs-Dev@namesys.com>
Subject: Re: performance of filesystem xattrs with Samba4
Date: Sat, 20 Nov 2004 08:13:19 -0800 [thread overview]
Message-ID: <419F6D1F.10001@namesys.com> (raw)
In-Reply-To: <16798.59519.63931.494579@samba.org>
tridge@samba.org wrote:
>Hans,
>
> > can you describe qualitatively what your test does?
>
>The access patterns are very similar to dbench, which I believe you
>are already familiar with. Let me know if you'd like an explanation of
>dbench.
>
>
Actually, I would, because I have never read its code, and have been at
a loss for years to understand its meaning as a result of that.
>For the test I ran, the basic load file is almost the same as dbench,
>but the interpretation of the load file is a little bit different.
>
>For example, when the load file says "open a file", Samba4 needs to
>first stat() the file, and if xattrs are being used then it needs to
>do a fgetattr() to grab the extended DOS attributes. Additionally, if
>the open has the effect of changing any of those attributes then
>Samba4 needs to use fsetxattr() to write back the extended attributes,
>and sometimes fchmod() and utime() as well depending on the open
>parameters.
>
>When dbench interprets one of these load files it would just call
>open(), skipping all the extra system calls.
>
>The full load file I used is at:
>
> http://samba.org/ftp/tridge/dbench/client_enterprise.txt
>
>and is based on a capture of a "Enterprise Disk Mix" Netbench run,
>captured using the "nbench" load capturing proxy module in Samba4,
>using a Win2003 server backend and WinXP client.
>
>The working set size is approximately 20 MByte per client, and I was
>testing with 10 simulated clients. That means its very much a "in
>memory" test, as the machine has 2G of ram.
>
>
Ah, that explains a lot. For that kind of workload, the simpler the fs
the better, because really all you are doing is adding overhead to
copy_to_user and copy_from_user. All of reiser4's advanced features
will add little or no value if you are staying in ram.
> > You didn't answer whether it does fsyncs, etc.
>
>I think I did mention that the test does no fsync calls in the
>configuration I used. The reason I qualify the answer is that the load
>file actually contains approximately 1% Flush calls, but in its
>default configuration these are noops for Samba4. This is due to the
>confusion in Win32 between a "flush" operation and a "fsync"
>operation. Microsoft programmers use "flush" like a unix programmer
>would use fflush() on stdio, which is a noop for Samba. You can also
>configure Samba to treat flush as a "fsync", which is quite a
>different operation.
>
>The operation mix is as follows, listed with the approximate posix
>equivalent operation.
>
>(27%) ReadX (==pread)
>(17%) NTCreateX (==open)
>(16%) QUERY_PATH_INFORMATION (==stat)
>(13%) Close (==close)
>(9%) WriteX (==pwrite)
>(6%) FIND_FIRST (==opendir/readdir/closedir)
>(3%) Unlink (==unlink)
>(3%) QUERY_FS_INFORMATION (==statfs)
>(3%) QUERY_FILE_INFORMATION (==fstat)
>(1%) SET_FILE_INFORMATION (==fchmod/utime)
>(1%) Flush (==noop)
>(1%) Rename (==rename)
>(0%) UnlockX (==fcntl unlock)
>(0%) LockX (==fcntl lock)
>
>but the above can be a little misleading, as (for example) NTCreateX
>is a very complex call, and can be used to create directories, create
>files, open files or even delete files or directories (using the
>delete on close semantics).
>
> > It might be worth testing it with the extents only mount option for
> > reiser4.
>
>My apologies if I have just missed it, but I can't see an option that
>looks like "extents only" in either reiser4_parse_options() or in
>Documentation/filesystems/reiser4.txt in 2.6.10-rc2-mm2. Can you let
>me know the exact option name?
>
>Cheers, Tridge
>
>
>
>
mkfs.reiser4 -o extent=extent40
next prev parent reply other threads:[~2004-11-20 16:13 UTC|newest]
Thread overview: 41+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <16759.16648.459393.752417@samba.org>
2004-10-21 18:32 ` [PATCH] Re: idr in Samba4 Jim Houston
2004-10-22 6:17 ` tridge
2004-11-19 7:38 ` performance of filesystem xattrs with Samba4 tridge
2004-11-19 8:08 ` James Morris
2004-11-19 10:16 ` Andreas Dilger
2004-11-19 11:43 ` tridge
2004-11-19 22:28 ` Andreas Dilger
2004-11-22 13:02 ` tridge
2004-11-22 21:40 ` Andreas Dilger
2004-11-19 12:03 ` Anton Altaparmakov
2004-11-19 12:43 ` tridge
2004-11-19 14:11 ` Anton Altaparmakov
2004-11-20 10:44 ` tridge
2004-11-20 16:20 ` Hans Reiser
2004-11-20 23:29 ` tridge
2004-11-19 15:34 ` Hans Reiser
2004-11-19 15:58 ` Jan Engelhardt
2004-11-19 22:03 ` tridge
2004-11-20 4:51 ` Hans Reiser
2004-11-19 23:01 ` tridge
2004-11-20 0:26 ` Andrew Morton
2004-11-21 1:14 ` tridge
2004-11-21 2:12 ` tridge
2004-11-21 23:53 ` tridge
2004-11-23 9:37 ` tridge
2004-11-23 17:55 ` Andreas Dilger
2004-11-24 7:53 ` tridge
2004-11-20 4:40 ` Hans Reiser
2004-11-20 6:47 ` tridge
2004-11-20 16:13 ` Hans Reiser [this message]
2004-11-20 23:16 ` tridge
2004-11-21 2:36 ` Hans Reiser
2004-11-21 0:21 ` tridge
2004-11-21 2:41 ` Hans Reiser
2004-11-21 1:53 ` tridge
2004-11-21 2:48 ` Hans Reiser
2004-11-21 3:19 ` tridge
2004-11-21 6:11 ` Hans Reiser
2004-11-21 22:21 ` Nathan Scott
2004-11-21 23:43 ` tridge
2004-12-03 17:49 Steve French
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=419F6D1F.10001@namesys.com \
--to=reiser@namesys.com \
--cc=Reiserfs-Dev@namesys.com \
--cc=linux-kernel@vger.kernel.org \
--cc=tridge@samba.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.