[GHC] #9961: compile-time performance regression compiling genprimcode
GHC
ghc-devs at haskell.org
Tue Jan 6 22:47:09 UTC 2015
#9961: compile-time performance regression compiling genprimcode
-------------------------------------+-------------------------------------
Reporter: hvr | Owner: simonpj
Type: bug | Status: new
Priority: normal | Milestone: 7.10.1
Component: Compiler | Version: 7.10.1-rc1
Resolution: | Keywords:
Operating System: Unknown/Multiple | Architecture:
Type of failure: Compile-time | Unknown/Multiple
performance bug | Test Case:
Blocked By: | Blocking:
Related Tickets: | Differential Revisions:
-------------------------------------+-------------------------------------
Comment (by hvr):
Have you tried my exact same steps?
Btw, tomorrow I can throw a `prof`-compiled GHC at `Lexer.hs`, if you tell
me exactly what kind of output you're interested in...
Here's the equivalent output to comment:6 for GHC 7.8.4:
{{{
0.003879 Glasgow Haskell Compiler, Version 7.8.4, stage 2 booted by GHC
version 7.6.3
0.003990 Using binary package database:
/opt/ghc/7.8.4/lib/ghc-7.8.4/package.conf.d/package.cache
0.013057 Using binary package database:
/home/hvr/.ghc/x86_64-linux-7.8.4/package.conf.d/package.cache
0.022682 hiding package shelly-1.5.6 to avoid conflict with later version
shelly-1.6.0
0.022748 wired-in package ghc-prim mapped to ghc-
prim-0.3.1.0-a24f9c14c632d75b683d0f93283aea37
0.022836 wired-in package integer-gmp mapped to integer-
gmp-0.5.1.0-26579559b3647acf4f01d5edd9491a46
0.022874 wired-in package base mapped to
base-4.7.0.2-bfd89587617e381ae01b8dd7b6c7f1c1
0.022938 wired-in package rts mapped to builtin_rts
0.022964 wired-in package template-haskell mapped to template-
haskell-2.9.0.0-6d27c2b362b15abb1822f2f34b9ae7f9
0.022982 wired-in package dph-seq not found.
0.023020 wired-in package dph-par not found.
0.023869 Created temporary directory: /tmp/ghc12579_0
0.023918 *** C pre-processor:
0.029089 *** Checking old interface for main:Lexer:
0.029165 *** Parser:
0.103668 *** Renamer/typechecker:
0.901522 *** Desugar:
1.507213 Result size of Desugar (after optimization)
1.507273 = {terms: 97,707, types: 6,407, coercions: 4}
1.507283 *** Simplifier:
1.722230 Result size of Simplifier iteration=1
1.722290 = {terms: 92,782, types: 1,457, coercions: 31}
2.014619 Result size of Simplifier iteration=2
2.014680 = {terms: 92,784, types: 1,469, coercions: 40}
2.251739 Result size of Simplifier
2.251799 = {terms: 92,784, types: 1,469, coercions: 40}
2.251808 *** Specialise:
2.308621 Result size of Specialise
2.308682 = {terms: 92,784, types: 1,469, coercions: 40}
2.308692 *** Float out(FOS {Lam = Just 0, Consts = True, PAPs = False}):
2.308699 Result size of Float out(FOS {Lam = Just 0,
2.308715 Consts = True,
2.721925 PAPs = False})
2.721984 = {terms: 161,685, types: 37,280, coercions: 40}
2.721993 *** Float inwards:
2.806740 Result size of Float inwards
2.806800 = {terms: 161,685, types: 37,280, coercions: 40}
2.806810 *** Simplifier:
4.854193 Result size of Simplifier iteration=1
4.854254 = {terms: 89,091, types: 2,930, coercions: 1,043}
5.037276 Result size of Simplifier iteration=2
5.037336 = {terms: 88,743, types: 2,545, coercions: 770}
5.299382 Result size of Simplifier iteration=3
5.299442 = {terms: 88,739, types: 2,542, coercions: 767}
5.557920 Result size of Simplifier
5.557980 = {terms: 88,739, types: 2,542, coercions: 767}
5.557989 *** Simplifier:
5.828540 Result size of Simplifier iteration=1
5.828599 = {terms: 88,694, types: 32,129, coercions: 767}
6.148168 Result size of Simplifier
6.148227 = {terms: 88,686, types: 32,117, coercions: 767}
6.148237 *** Simplifier:
6.428055 Result size of Simplifier iteration=1
6.428115 = {terms: 88,707, types: 32,132, coercions: 781}
6.708043 Result size of Simplifier iteration=2
6.708103 = {terms: 88,707, types: 32,132, coercions: 767}
6.996411 Result size of Simplifier
6.996470 = {terms: 88,707, types: 32,132, coercions: 767}
6.996480 *** Demand analysis:
7.259522 Result size of Demand analysis
7.259587 = {terms: 88,707, types: 32,132, coercions: 767}
7.259599 *** Worker Wrapper binds:
7.309554 Result size of Worker Wrapper binds
7.309618 = {terms: 88,872, types: 32,381, coercions: 767}
7.309631 *** Simplifier:
7.583439 Result size of Simplifier iteration=1
7.583499 = {terms: 88,820, types: 32,337, coercions: 767}
7.867272 Result size of Simplifier iteration=2
7.867333 = {terms: 88,751, types: 32,199, coercions: 767}
8.146394 Result size of Simplifier
8.146453 = {terms: 88,751, types: 32,199, coercions: 767}
8.146462 *** Float out(FOS {Lam = Just 0, Consts = True, PAPs = True}):
8.146469 Result size of Float out(FOS {Lam = Just 0,
8.146486 Consts = True,
8.732691 PAPs = True})
8.732752 = {terms: 205,891, types: 122,523, coercions: 767}
8.732761 *** Common sub-expression:
9.101395 Result size of Common sub-expression
9.101457 = {terms: 177,032, types: 121,927, coercions: 217}
9.101466 *** Float inwards:
9.207068 Result size of Float inwards
9.207128 = {terms: 177,032, types: 121,927, coercions: 217}
9.207137 *** Simplifier:
9.811384 Result size of Simplifier iteration=1
9.811444 = {terms: 119,608, types: 92,568, coercions: 217}
10.273151 Result size of Simplifier iteration=2
10.273205 = {terms: 119,609, types: 92,567, coercions: 217}
10.829669 Result size of Simplifier
10.829729 = {terms: 119,609, types: 92,567, coercions: 217}
10.829739 *** Tidy Core:
11.177167 Result size of Tidy Core
11.177231 = {terms: 119,673, types: 92,627, coercions: 217}
11.207078 *** CorePrep:
11.549034 Result size of CorePrep
11.549100 = {terms: 119,974, types: 92,991, coercions: 217}
11.549129 *** Stg2Stg:
11.549139 *** CodeOutput:
11.549306 *** New CodeGen:
11.549336 *** CPSZ:
11.549480 *** CPSZ:
11.550487 *** CPSZ:
(...almost 30000 lines of uninteresting "*** CPSZ:" removed...)
13.468961 *** CPSZ:
13.469193 *** CPSZ:
13.469423 *** CPSZ:
13.473052 *** Assembler:
13.611920 *** Deleting temp files:
13.612006 Warning: deleting non-existent /tmp/ghc12579_0/ghc12579_3.c
13.612314 *** Deleting temp dirs:
}}}
--
Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/9961#comment:8>
GHC <http://www.haskell.org/ghc/>
The Glasgow Haskell Compiler
More information about the ghc-tickets
mailing list