On 05/25/2012 01:10 PM, Paweł Sikora wrote:
On Friday 25 of May 2012 11:50:13 Gabriel Dos Reis wrote:
On Fri, May 25, 2012 at 11:44 AM, Paweł Sikora<pl...@agmk.net> wrote:
so, why you just don't use the hash table implementation from libstdc++?
we have agreed on C++03 as a bootstrap compiler.
There is unfortunately no hash table in C++03.
can't you use implementation from tr1 for c++98/03 mode?
It would be interesting to see the result of using C++ standard hash
tables and I hope somebody will finally try this. But I doubt the
performance results will be better.
C++ standrad hash tables is based on buckets usage. Libibery hashtables
has no buckets. That was a major idea for such implementation more 20
years ago and including it in gcc (more 13 years ago). Hashtable
without buckets permits 2-3 times more entries for the same space than
hashtable with the buckets and that, I guess, compensates a slightly
bigger collision rate when the buckets are not used. It also makes the
table entry search code is very compat, simple, and fast.