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?