Re: BSD license compatible hash algorithm?
- From: "Aryeh M. Friedman" <aryeh.friedman@xxxxxxxxx>
- Date: Sun, 30 Dec 2007 18:27:08 -0500
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
Dag-Erling Smørgrav wrote:
"Aryeh M. Friedman" <aryeh.friedman@xxxxxxxxx> 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-----
_______________________________________________
freebsd-hackers@xxxxxxxxxxx mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-hackers
To unsubscribe, send any mail to "freebsd-hackers-unsubscribe@xxxxxxxxxxx"
- Follow-Ups:
- Re: BSD license compatible hash algorithm?
- From: Dag-Erling Smørgrav
- Re: BSD license compatible hash algorithm?
- From: perryh
- Re: BSD license compatible hash algorithm?
- References:
- BSD license compatible hash algorithm?
- From: Garrett Cooper
- Re: BSD license compatible hash algorithm?
- From: Brooks Davis
- Re: BSD license compatible hash algorithm?
- From: Garrett Cooper
- Re: BSD license compatible hash algorithm?
- From: Ivan Voras
- Re: BSD license compatible hash algorithm?
- From: Aryeh M. Friedman
- Re: BSD license compatible hash algorithm?
- From: Dag-Erling Smørgrav
- BSD license compatible hash algorithm?
- Prev by Date: Re: printing boot probe messages
- Next by Date: Re: prefaulting MAP_ANONYMOUS pages
- Previous by thread: Re: BSD license compatible hash algorithm?
- Next by thread: Re: BSD license compatible hash algorithm?
- Index(es):
Relevant Pages
- Re: Perl hashing speedup ?
... I feel that disbalanced bucket usage / and less number of hash buckets ... Now
I have some queries regarding way perl hashing mechanism maps keys ... about how perl
hashes work internally; but I guess we will be needing ... (comp.lang.perl.moderated) - Re: Hashing
... What you have to keep in mind is that a hash table for words in by ... linear
testing of buckets. ... What is important is to ensure that you have an effective collision
... memory for the table, you need two arrays, one is the pointers to the ... (alt.lang.asm) - Re: Hash table in C++? STL?
... > a tree-like structure instead of lists for the buckets). ... > the standard
will require equality or a relational comparator. ... the hashing function is where
all the complexity lies and I'd be ... But we need hash only the first maxchars characters.
... (comp.lang.cpp) - Re: SGI hash_map
... >> studied hash functions you'll find on the web. ... > And before
inserting into the map, each hash value is calculated with: ... a uniform distribution.
... a program to count the number of buckets that contain multiple items. ... (comp.lang.cpp) - Re: Hash table in C++? STL?
... I wouldn't dare claim to be either, without doing some research first. ... by
the number of items that hash to that index. ... perhaps you meant "the size measured in
number of buckets" and I was ... second hash function is used to determine the sequence
of slots to try. ... (comp.lang.cpp)