http://gcc.gnu.org/bugzilla/show_bug.cgi?id=54075
Martin Cracauer <cracauer at cons dot org> changed:
What |Removed |Added
----------------------------------------------------------------------------
CC| |cracauer at cons dot org
--- Comment #26 from Martin Cracauer <cracauer at cons dot org> 2012-10-22
20:50:25 UTC ---
I'm afraid this doesn't quite do it.
I still observe a > 60% slowdown going from gcc-4.4 to gcc-4.7, with this fix
already in, specifically for insert(). It's a 320,000 member table I am
dealing with here.
I can make 4.7 be as fast as 4.4 by preemptively setting the reserve to what I
know (for this test) to be the maximum size I need, but measured resident
memory shoots up (not unexpected). And resident memory of the 4.7 build was
already higher than 4.4 so I don't think this can be the answer here.
Playing with the load factor resulted in a minor speedup with 0.4 (from 1.0),
but not reaching 4.4 performance. Other load factors (lower than 0.4 and higher
than 1.0) are even slower.
Is there more specific information available about the tradeoff numbers that
made GNU pick this new implementation?