[GHC] #9476: Implement late lambda-lifting
GHC
ghc-devs at haskell.org
Wed Jan 9 17:20:20 UTC 2019
#9476: Implement late lambda-lifting
-------------------------------------+-------------------------------------
Reporter: simonpj | Owner: sgraf
Type: feature request | Status: closed
Priority: normal | Milestone: 8.8.1
Component: Compiler | Version: 7.8.2
Resolution: fixed | Keywords: LateLamLift
Operating System: Unknown/Multiple | Architecture:
Type of failure: Runtime | Unknown/Multiple
performance bug | Test Case:
Blocked By: | Blocking:
Related Tickets: #8763 #13286 | Differential Rev(s): Phab:D5224
Wiki Page: LateLamLift |
-------------------------------------+-------------------------------------
Comment (by sgraf):
Now that #15999 has a fix, I redid some of the benchmarks.
Before I got distracted, we were discussing whether the allocation
heuristic ("don't allow closure growth") is really effective. Here are the
results against 8.6 as the baseline:
https://gist.github.com/sgraf812/d3eb0b2251512a1845adcbf356248c25
`ll-$date` is disallowing closure growth (notice absence of any regression
in allocations), whereas `ll-c2-$date` allows closure growth and yields
marginally better counted instructions at that.
I expected more regressions in `ll-c2`, but there's really just
`paraffins` regressing by over 1% wrt. `ll`. Note that `wheel-sieve1`
still regresses by 28.7% in allocations, while not providing a real
benefit.
Let's see what `paraffins` is up to and what runtime measurements suggest.
Maybe we can get rid of the closure growth heuristic (which would be a
shame, but that's science).
--
Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/9476#comment:75>
GHC <http://www.haskell.org/ghc/>
The Glasgow Haskell Compiler
More information about the ghc-tickets
mailing list