[GHC] #5113: Huge performance regression of 7.0.2, 7.0.3 and HEAD over 7.0.1 and 6.12 (MonoLocalBinds)

GHC cvs-ghc at haskell.org
Thu Apr 14 03:34:52 CEST 2011


#5113: Huge performance regression of 7.0.2, 7.0.3 and HEAD over 7.0.1 and 6.12
(MonoLocalBinds)
----------------------------------+-----------------------------------------
    Reporter:  daniel.is.fischer  |       Owner:                             
        Type:  bug                |      Status:  new                        
    Priority:  normal             |   Component:  Compiler                   
     Version:  7.0.3              |    Keywords:  performance, MonoLocalBinds
    Testcase:                     |   Blockedby:                             
          Os:  Linux              |    Blocking:                             
Architecture:  x86                |     Failure:  Runtime performance bug    
----------------------------------+-----------------------------------------
 Exploring ways to make show for `Double` and `Float` faster, I encountered
 a terrible performance regression. Time increased about 20-fold,
 allocation about 75-fold.

 With 6.12.3 and 7.0.1, the new code is nearly twice as fast as the old and
 allocates less than a third. With 7.0.2, 7.0.3 and the HEAD
 (7.1.20110329), the new code is over ten times slower than the old and
 allocates more than twenty times as much.

 In 7.0.3's core at least some local bindings appear as polymorphic
 functions which are inlined by 7.0.1. And indeed, compiling with
 -XMonoLocalBinds rectifies matters. Nevertheless, that shouldn't happen.

-- 
Ticket URL: <http://hackage.haskell.org/trac/ghc/ticket/5113>
GHC <http://www.haskell.org/ghc/>
The Glasgow Haskell Compiler



More information about the Glasgow-haskell-bugs mailing list