
#12367: Commit adding instances to GHC.Generics regression compiler performance -------------------------------------+------------------------------------- Reporter: bgamari | Owner: bgamari Type: bug | Status: new Priority: normal | Milestone: 8.0.2 Component: Compiler | Version: 8.0.1 Resolution: | Keywords: Generics Operating System: Unknown/Multiple | Architecture: Type of failure: Compile-time | Unknown/Multiple performance bug | Test Case: Blocked By: | Blocking: Related Tickets: | Differential Rev(s): Wiki Page: | -------------------------------------+------------------------------------- Comment (by bgamari): In our call yesterday Simon expressed skepticism that the performance regression is entirely due to a larger interface file. More like, he said, is that an interface is now being loaded which wasn't previously necessary. Indeed this is the case: interface files for both `GHC.Generics` and `GHC.Ptr` are now loaded while compiling `Data.Foldable` but were not previously, {{{ $ grep 'Reading interface' dump-if.log Reading interface for Prelude; reason: Prelude is directly imported Reading interface for Geomfuns; Reading interface for Auxprogfuns; Reading interface for GHC.Base; Reading interface for GHC.Float; Reading interface for GHC.Types; Reading interface for Data.Foldable; Reading interface for GHC.List; Reading interface for GHC.Show; Reading interface for GHC.Prim; Reading interface for GHC.Classes; reason: Need decl for Eq Reading interface for GHC.Num; reason: Need decl for Num Reading interface for GHC.Stack.Types; reason: Need decl for SrcLoc Reading interface for GHC.Integer.Type; Reading interface for GHC.Generics; reason: Need decl for V1 Reading interface for GHC.Ptr; reason: Need decl for Ptr Reading interface for Data.Monoid; reason: Need decl for Sum Reading interface for Data.Proxy; reason: Need decl for Proxy Reading interface for Data.Either; reason: Need decl for Either Reading interface for GHC.Arr; reason: Need decl for Array Reading interface for GHC.Tuple; Reading interface for GHC.Enum; reason: Need decl for enumFromTo Reading interface for GHC.CString; }}} -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/12367#comment:7 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler