There are a couple of reasons this could happen:

- The -h flag causes the GC to run more often, which will reclaim memory more promptly

- -h causes more old-gen GCs to happen, which can avoid some cases where generational GC has promoted something that hangs on to a lot of stuff causing the heap to grow.

Cheers,
Simon

On 06/12/2014 23:58, Lennart Augustsson wrote:
I'm running the 32-bit Windows version of ghc-7.8.3.

Here are two runs:

$ RunMu +RTS -A64M -h -Sstat.log -i1 -RTS -c Strat.App.Abacus.Main
Compiling afresh Strat.App.Abacus.Main
Compiled  afresh Strat.App.Abacus.Main, 1302.84s

$ RunMu +RTS -A64M -Sstat.log -i1 -RTS -c Strat.App.Abacus.Main
Compiling afresh Strat.App.Abacus.Main
RunMu.exe: out of memory

The binary is compiled without profiling, but in the first run I'm using
the -h flag to get the rudimentary heap profile.  And with -h it works,
but without the flag it runs out of memory.

Any bright ideas from the RTS experts on why this could happen?

   -- Lennart



_______________________________________________
ghc-devs mailing list
[email protected]
http://www.haskell.org/mailman/listinfo/ghc-devs

_______________________________________________
ghc-devs mailing list
[email protected]
http://www.haskell.org/mailman/listinfo/ghc-devs

Reply via email to