[GHC] #9374: Investigate Static Argument Transformation
GHC
ghc-devs at haskell.org
Mon Jul 28 07:21:51 UTC 2014
#9374: Investigate Static Argument Transformation
-------------------------------------+-------------------------------------
Reporter: jstolarek | Owner:
Type: task | Status: new
Priority: lowest | Milestone:
Component: Compiler | Version: 7.9
Keywords: | Operating System:
Architecture: Unknown/Multiple | Unknown/Multiple
Difficulty: Unknown | Type of failure:
Blocked By: | None/Unknown
Related Tickets: | Test Case:
| Blocking:
| Differential Revisions:
-------------------------------------+-------------------------------------
At the moment the Static Argument Transformation (SAT) optimisation is not
run unless explicitly enabled with `-fstatic-argument-transformation`. The
comment in DynFlags says:
{{{
Max writes: I think it's probably best not to enable SAT with -O2 for the
6.10 release. The version of SAT in HEAD at the moment doesn't incorporate
several improvements to the heuristics, and I'm concerned that without
those changes SAT will interfere with some attempts to write "high
performance Haskell", as we saw in some posts on Haskell-Cafe earlier
this year. In particular, the version in HEAD lacks the tail call
criterion, so many things that look like reasonable loops will be
turned into functions with extra (unneccesary) thunk creation.
}}}
6.10 was a long time ago. Has anything changed since then? Does it make
sense to enable that optimisation now? What are the mentioned heuristics
and were they finally implemented? Does anyone know what Haskell-cafe
posts does Max refer to?
--
Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/9374>
GHC <http://www.haskell.org/ghc/>
The Glasgow Haskell Compiler
More information about the ghc-tickets
mailing list