[GHC] #3016: Long compile times,
large memory use with static data in 6.10
GHC
trac at galois.com
Fri Apr 3 07:08:30 EDT 2009
#3016: Long compile times, large memory use with static data in 6.10
-----------------------------------------------+----------------------------
Reporter: dons | Owner: igloo
Type: bug | Status: new
Priority: normal | Milestone:
Component: Compiler | Version: 6.10.1
Severity: normal | Resolution:
Keywords: static data | Difficulty: Unknown
Testcase: simplCore/should_compile/T3016 | Os: Unknown/Multiple
Architecture: Unknown/Multiple |
-----------------------------------------------+----------------------------
Changes (by simonpj):
* testcase: => simplCore/should_compile/T3016
* owner: => igloo
Comment:
OK I fixed this bug as a part of this patch:
{{{
Fri Apr 3 01:46:34 PDT 2009 simonpj at microsoft.com
* Adjust inlining heursitics
Ignore-this: a2d6849726f6705e06941c74137bfe7e
This patch is the result of a long series of nofib-based experiments
to improve GHC's inlining heuristics.
}}}
Now compilation of the file you attached is much, much faster:
{{{
$ time $vpj2 Large2.hs -c -O -fforce-recomp
real 0m29.653s
user 0m27.935s
sys 0m0.631s
}}}
Each of the 1000-odd big constants in Large2.hs expands to the product of
a dozen or so small constants. A file of 12,000 constants combined with
calls to `plusInteger` etc still shouldn't take as long as 30s, but still
an improvement of two orders of magnitude should help you.
Ian: I'll add the example as a test case
(`simplCore/should_compile/T3116.hs`), with the idea that it'll time out
if Bad Things happen again in the future. Can you just check that it
doesn't time out on some architectures already; if so, make the test a bit
smaller? I'll reassign the bug to you for that sole purpose. After that
you can close it.
Oh, the test runs slowly, so you might want not to have it in the
validation run.
Simon
--
Ticket URL: <http://hackage.haskell.org/trac/ghc/ticket/3016#comment:3>
GHC <http://www.haskell.org/ghc/>
The Glasgow Haskell Compiler
More information about the Glasgow-haskell-bugs
mailing list