[GHC] #8763: forM_ [1..N] does not get fused (10 times slower than go function)
GHC
ghc-devs at haskell.org
Fri Apr 20 11:50:21 UTC 2018
#8763: forM_ [1..N] does not get fused (10 times slower than go function)
-------------------------------------+-------------------------------------
Reporter: nh2 | Owner: (none)
Type: bug | Status: new
Priority: normal | Milestone: 8.6.1
Component: Compiler | Version: 7.6.3
Resolution: | Keywords:
Operating System: Unknown/Multiple | Architecture:
Type of failure: Runtime | Unknown/Multiple
performance bug | Test Case:
Blocked By: | Blocking:
Related Tickets: #7206 | Differential Rev(s):
Wiki Page: |
-------------------------------------+-------------------------------------
Comment (by simonpj):
> I'll give it a try. Without understanding all operational consequences
of LLF, I'd still guess that making sure all cs inline would be more
beneficial in this scenario.
In general inlining is good. But in the case on this thread, I think it's
the non-allocation of a function closure that saves all the work, rather
than any optimisations that happen after inlining c.
--
Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/8763#comment:63>
GHC <http://www.haskell.org/ghc/>
The Glasgow Haskell Compiler
More information about the ghc-tickets
mailing list