All of lore.kernel.org
 help / color / mirror / Atom feed
From: "J. Bruce Fields" <bfields@fieldses.org>
To: Neil Brown <neilb@suse.de>
Cc: Iozone <capps@iozone.org>,
	cel@citi.umich.edu, wli@holomorphy.com,
	nfs@lists.sourceforge.net
Subject: Re: Re: An interesting performance thing ?
Date: Wed, 14 Dec 2005 21:32:56 -0500	[thread overview]
Message-ID: <20051215023256.GA22951@fieldses.org> (raw)
In-Reply-To: <17312.45710.867019.969182@cse.unsw.edu.au>

On Thu, Dec 15, 2005 at 11:02:22AM +1100, Neil Brown wrote:
> The trouble is that just because inet_lnaof makes the final hash
> better for your mix of clients, that doesn't mean it won't make it
> worse for someone else.  I admit that I cannot provide a like sample
> mix of clients what would be worse with inet_lnaof, but that doesn't
> mean they don't exist.

It strikes me as extremely unlikely that any set of clients would have
good variation in the *high* 13 bits of their IP addresses.

In fact, in the common case the high 13 bits are probably completely
constant.

So for these architectures, the ip address lookup is probably usually
degenerating to a linear search.  Since that lookup has to be performed
on every rpc call, this is likely to be painful.

> But I don't propose submitting it to Linus because - useful as it is -
> it is simply wrong.  We need to fix that hash function, and this clear
> problem is a good motivation to do that.

It'd be worth checking whether other callers may be giving hash_long
32-bit inputs, since they might have similar problems.

--b.


-------------------------------------------------------
This SF.net email is sponsored by: Splunk Inc. Do you grep through log files
for problems?  Stop!  Download the new AJAX search engine that makes
searching your log files as easy as surfing the  web.  DOWNLOAD SPLUNK!
http://ads.osdn.com/?ad_id=7637&alloc_id=16865&op=click
_______________________________________________
NFS maillist  -  NFS@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/nfs

  parent reply	other threads:[~2005-12-15  2:33 UTC|newest]

Thread overview: 21+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2005-12-14 18:22 An interesting performance thing ? Iozone
2005-12-14 22:26 ` Neil Brown
2005-12-14 22:46   ` Chuck Lever
2005-12-14 23:47     ` Iozone
2005-12-15  0:02       ` Neil Brown
2005-12-15  0:43         ` Chuck Lever
2005-12-15  0:57           ` Neil Brown
2005-12-15  0:59             ` Chuck Lever
2005-12-16 10:15           ` Aurélien Charbon
2005-12-16 14:23             ` Iozone
2005-12-15  2:32         ` J. Bruce Fields [this message]
2005-12-15  4:51           ` Iozone
2005-12-15 14:49             ` J. Bruce Fields
2005-12-15 15:36               ` Iozone
2005-12-15 16:14                 ` J. Bruce Fields
2005-12-15 16:41                   ` Iozone
2005-12-15 17:07                     ` J. Bruce Fields
2005-12-16  1:25                   ` Neil Brown
2005-12-16  3:59                     ` Iozone
2005-12-14 22:50   ` Iozone
2005-12-15  2:22 ` J. Bruce Fields

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=20051215023256.GA22951@fieldses.org \
    --to=bfields@fieldses.org \
    --cc=capps@iozone.org \
    --cc=cel@citi.umich.edu \
    --cc=neilb@suse.de \
    --cc=nfs@lists.sourceforge.net \
    --cc=wli@holomorphy.com \
    /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.