Massive performance regression from switching to gcc 4.5

Andrew Pinski pinskia@gmail.com
Thu Jun 24 20:29:00 GMT 2010



On Jun 24, 2010, at 11:50 AM, Taras Glek <tglek@mozilla.com> wrote:

> Hi,
> Just wanted to give a heads up on what might be the biggest compiler- 
> upgrade-related performance difference we've seen at Mozilla.
>
> We switched gcc4.3 for gcc4.5 and our automated benchmarking  
> infrastructure reported  4-19% slowdown on most of our performance  
> metrics on 32 and 64bit Linux.
>
> A lone 8% speedup was measured on the Sunspider javascript benchmark  
> on 64bit linux.
>
> Here are some of the slowdowns reported:
> http://groups.google.com/group/mozilla.dev.tree-management/browse_thread/thread/77951ccb76b5e630#
> http://groups.google.com/group/mozilla.dev.tree-management/browse_thread/thread/624246d7d900ed41#
>
>
> Most of the code is compiled with   -fPIC  -fno-rtti -fno-exceptions  
> -Os

Stop right there. You are compiling at -Os, that is tuned for size and  
not speed. So the question is did the size go down? Not the speed  
decreased. Try at -O2 and report back. I doubt we are going to do a  
tradeoff for speed at -Os at all.
Thanks,
Andrew Pinski


> -freorder-blocks -fomit-frame-pointer. The only difference in 4.5 is  
> that we link with -static-libstdc++ and compile libstdc++ with - 
> fPIC. However we barely make use of libstdc++, so I doubt that's the  
> problem. We needed to link statically because of 4.5 uses a handful  
> of newer libstdc++ symbols.
>
> We were upgrading to gcc 4.5.0 because of plugins and the fact that  
> it can compile Firefox with PGO on(above builds were not built with  
> PGO). Now we have to reconsider a complete switchover to 4.5.
>
> I'm not sure how to proceed from here,
> Taras



More information about the Gcc mailing list