Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 30 Dec 2007 18:27:08 -0500
From:      "Aryeh M. Friedman" <aryeh.friedman@gmail.com>
To:        =?UTF-8?B?RGFnLUVybGluZyBTbcO4cmdyYXY=?= <des@des.no>
Cc:        freebsd-hackers@freebsd.org, Ivan Voras <ivoras@freebsd.org>
Subject:   Re: BSD license compatible hash algorithm?
Message-ID:  <4778294C.3030905@gmail.com>
In-Reply-To: <86r6h5zpr3.fsf@ds4.des.no>
References:  <5950EE0C-383D-4D6B-9991-A0DEABD2ADE4@u.washington.edu> <20071228003716.GB48997@lor.one-eyed-alien.net> <B8D4C3C6-B867-4550-9F17-4DC6930D10E2@u.washington.edu> <fl2qiv$qoh$1@ger.gmane.org> <4774EF27.90307@gmail.com> <86r6h5zpr3.fsf@ds4.des.no>

next in thread | previous in thread | raw e-mail | index | archive | help
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Dag-Erling Smørgrav wrote:
> "Aryeh M. Friedman" <aryeh.friedman@gmail.com> writes:
>> All hashs have issues with pooling.... see
>> http://www.burtleburtle.net/bob/hash/index.html... btw it is a
>> old wives tale that the number of buckets should be prime (mostly
>> based on the very weak implementation Knuth offered)
>
> Not an "old wives' tale", but rather an easy way to implement a
> hash algorithm that is good enough for most simple uses: metric
> modulo table size, where metric is a number derived from the item
> in such a manner as to give a good spread.

Sorry for taking a while to reply.... but the above only applies if
your using a very primitive hash like Knuth's multiplication one....
every modern hash I know of should have 2^k buckets actually for some
k<2^32 [in almost all cases <2^16 except for algorithms like the one I
mentioned I am working on which sets k=n where n=the bit count of the
key].

- --
Aryeh M. Friedman
FloSoft Systems
http://www.flosoft-systems.com
Developer, not business, friendly
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2.0.4 (FreeBSD)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org

iD8DBQFHeClMzIOMjAek4JIRAlA+AKCVC0oOblPhF7QZARtkfUmdGX4hVACfcyPd
qhtFfOt2lOaxcmCDt6/wXsE=
=jztY
-----END PGP SIGNATURE-----




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?4778294C.3030905>