I like a lot of what Bob Jenkins writes, and I think(?) I may still be using his hash table library as my hash_t in my C code, but I still wouldn't use anything he designed in place of SHA256 or AES; so, just that word of caution.
i think it's worth pointing out the new murmurhash 3 for lookup table hashing, it has gone a long way and is supposed to be _really_ fast: <a href="http://code.google.com/p/smhasher/" rel="nofollow">http://code.google.com/p/smhasher/</a><p>The author of murmurhash actually based their work on Bob Jenkin's trying to make it speedier, and developed a nice hash test suite.
> Also, % can be extremely slow (230 times slower than addition on a Sparc).<p>This is surprising. For comparison, I did a test on my Intel Core 2 Duo. Modulo turned out to be about 8.5 times slower than addition. A lot better than Sparc, but it might still be to slow for certain applications.
Doesn't load for me.<p>Google cache here : <a href="http://webcache.googleusercontent.com/search?client=ubuntu&channel=fs&q=cache%3Ahttp%3A%2F%2Fburtleburtle.net%2Fbob%2Fhash%2F&ie=utf-8&oe=utf-8" rel="nofollow">http://webcache.googleusercontent.com/search?client=ubuntu&#...</a>