[GHC] #1600: Optimisation: CPR the results of IO
GHC
ghc-devs at haskell.org
Tue Jan 14 09:45:04 UTC 2014
#1600: Optimisation: CPR the results of IO
-------------------------------------+-------------------------------------
Reporter: simonmar | Owner: nomeata
Type: task | Status: new
Priority: lowest | Milestone: 7.6.2
Component: Compiler | Version: 6.6.1
Resolution: | Keywords:
Operating System: Unknown/Multiple | Architecture: Unknown/Multiple
Type of failure: Runtime | Difficulty: Moderate (less
performance bug | than a day)
Test Case: | Blocked By:
Blocking: | Related Tickets: #8598
-------------------------------------+-------------------------------------
Comment (by nomeata):
Fixed the `transform` issue (when analysing a complex case expression
where we do the scrunitee first to feed nested CPR information into the
pattern match variable, I was not making sure that the case binder gets at
least a flat CPR property, even if the scrunitee has none), and we are
finally where Simon expected nested CPR to be: No increased allocations
any more (or at least none that are not surpassed by the gains). Still a
very small effect, though.
{{{
--------------------------------------------------------------------------------
Program Size Allocs Runtime Elapsed TotalMem
--------------------------------------------------------------------------------
ansi +0.3% -0.1% 0.00 0.00 +0.0%
awards +0.3% -0.1% 0.00 0.00 +0.0%
compress2 +0.6% -0.8% 0.11 0.11 -8.0%
fibheaps +0.3% -0.3% 0.03 0.03 +0.0%
gamteb +0.4% -0.2% 0.04 0.04 +0.0%
grep +0.3% -0.1% 0.00 0.00 +0.0%
hpg +0.4% -3.0% 0.13 0.13 +0.0%
infer +0.3% -1.2% 0.03 0.03 +0.0%
k-nucleotide +0.2% -6.9% -0.7% -0.5% +0.0%
maillist +0.4% -0.8% 0.04 0.04 -4.2%
mkhprog +0.4% -0.3% 0.00 0.00 +0.0%
pic +0.3% -0.7% 0.00 0.00 +0.0%
pretty +0.4% -0.1% 0.00 0.00 +0.0%
rfib +0.3% -0.2% 0.01 0.01 +0.0%
scc +0.3% -0.1% 0.00 0.00 +0.0%
spectral-norm +0.4% -0.1% +0.0% +0.0% +0.0%
sphere +0.4% -4.7% 0.04 0.04 +0.0%
symalg +0.3% -0.1% 0.01 0.01 +0.0%
tak +0.3% -0.3% 0.01 0.01 +0.0%
--------------------------------------------------------------------------------
Min +0.2% -6.9% -5.3% -27.3% -8.0%
Max +0.7% +0.0% +1.4% +1.4% +50.0%
Geometric Mean +0.3% -0.2% -0.7% -2.3% +0.2%
}}}
--
Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/1600#comment:38>
GHC <http://www.haskell.org/ghc/>
The Glasgow Haskell Compiler
More information about the ghc-tickets
mailing list