Hello,

I'm experiencing some strange behaviour with GHC 6.10 and would like an explanation why.

Here's the problem. With GHC 6.8.[23] memory usage of a program was about 250mb (computing pi to 10^6 decimals). Now I tried recompiling and running with GHC 6.10 and I got more than 1.4gb before I killed it, so naturally I tried profiling but here's the strangeness. When I compile for profiling with -prof -auto-all and run with +RTS -p -RTS memory use is still about the same as before (> 1.4gb), but when I try running with +RTS -hc -RTS memory only reaches about 250mb.

What is the explanation for this behaviour?

I would send a program but it requires HERA, which is not on hackage ...

Here is the output of -s

./Test 100000 +RTS -s
      47,467,176 bytes allocated in the heap
      18,046,776 bytes copied during GC
       9,215,104 bytes maximum residency (6 sample(s))
         711,520 bytes maximum slop
              80 MB total memory in use (11 MB lost due to fragmentation)

  Generation 0:    84 collections,     0 parallel,  0.01s,  0.01s elapsed
  Generation 1:     6 collections,     0 parallel,  0.01s,  0.01s elapsed

  INIT  time    0.00s  (  0.00s elapsed)
  MUT   time    3.66s  (  3.71s elapsed)
  GC    time    0.02s  (  0.02s elapsed)
  RP    time    0.00s  (  0.00s elapsed)
  PROF  time    0.00s  (  0.00s elapsed)
  EXIT  time    0.00s  (  0.00s elapsed)
  Total time    3.68s  (  3.73s elapsed)

  %GC time       0.5%  (0.6% elapsed)

  Alloc rate    12,982,553 bytes per MUT second

  Productivity  99.5% of total user, 97.9% of total elapsed




./Test 100000 +RTS -s -hc
      47,471,160 bytes allocated in the heap
      18,637,752 bytes copied during GC
      13,580,144 bytes maximum residency (37 sample(s))
         810,712 bytes maximum slop
              33 MB total memory in use (7 MB lost due to fragmentation)

  Generation 0:    85 collections,     0 parallel,  0.02s,  0.02s elapsed
  Generation 1:    37 collections,     0 parallel,  0.00s,  0.01s elapsed

  INIT  time    0.00s  (  0.00s elapsed)
  MUT   time    3.67s  (  3.73s elapsed)
  GC    time    0.02s  (  0.03s elapsed)
  RP    time    0.00s  (  0.00s elapsed)
  PROF  time    0.00s  (  0.00s elapsed)
  EXIT  time    0.00s  (  0.00s elapsed)
  Total time    3.70s  (  3.77s elapsed)

  %GC time       0.6%  (0.8% elapsed)

  Alloc rate    12,941,165 bytes per MUT second

  Productivity  99.2% of total user, 97.4% of total elapsed




--
Best regards, Aleš
_______________________________________________
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe

Reply via email to