This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [PATCH 3/9] Use murmurhash3 for pointer map hashing


Richard Biener <richard.guenther@gmail.com> writes:
>>
>> One of the reasons I did it explicitely is that the murmur3 reference code is C++
>> (well really only the mixed code/declarations I think) and libiberty seems to be
>> C only. I suppose can port it to C and put it into libiberty though, and make
>> hashtab.c always use it.
>>
>> My understanding is that murmur is generally stronger than evahash.
>
> It would be nice to back this with some numbers on the collision rate
> for GCC hashtables,

I tested it for the preprocessor symbol hash at some point, but had some
second thoughts because it could potentially be called with unaligned 
arguments (ok on x86 with murmur, but may not be elsewhere). Don't 
remember the exact numbers, but I think it was a bit better.

For WPA types at least murmur3 got me from 70% collisions with the
eva ptrhash to 64%. The original was much worse.

Good point about the new hash table. Right now nothing using it is
on my performance radar though.

-Andi

-- 
ak@linux.intel.com -- Speaking for myself only


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]