On Tue, 2006-08-01 at 07:55 -0700, Luke Lonergan wrote:
> WRT hashing - we use FNV hash which is a very nice, very fast modern hash
> algorithm. We would contribute that if we worked on this.
We currently use Bob Jenkins' hash function[1], which is apparently
faster than FNV on most architectures except the Pentium IV (because the
P4 has slow shifting -- see [2]). I haven't compared their collision
rates -- it may be that we could improve matters incrementally by
switching to FNV, but the fundamental problems with our hash index
implementation lie elsewhere.
-Neil
[1] http://burtleburtle.net/bob/hash/doobs.html
[2] http://www.azillionmonkeys.com/qed/hash.html