
On 07/05/2009 15:17, Bulat Ziganshin wrote:
Hello Simon,
Thursday, May 7, 2009, 5:45:53 PM, you wrote:
out of date and say 256k, I've just fixed that). The old generation is allowed to grow to 2x its previous size by default before being collected.
you are right. i just checked old logs - seems that previously i just misinterpreted them
we need authoritative description that pays attention to all GC-related RTS switches
I'm happy to add more text here, what else would you like to see?
how about text that describes GC scenario like you was wrote in this letter? plus, description of RTS +S report format - it may be added to this scenario, i.e. "after this major GC, the following line will be printed to +S report: ..."
for example, i still doesn't understand why
old_live + alloc - collect != new_live
The output has changed: it now counts copied data, since as you say "collect" is a function of the other columns.
in the report below (i extracted two sequential lines):
Alloc Collect Live GC GC TOT TOT Page Flts bytes bytes bytes user elap user elap 265016 303104 840008 0.00 0.00 0.11 0.17 0 0 (Gen: 0) 265612 266240 904196 0.00 0.00 0.11 0.17 0 0 (Gen: 0)
and completely separate topic - +RTS -s report description also doesn't exist
Scroll down in that section I linked to before: http://www.haskell.org/ghc/docs/latest/html/users_guide/runtime-control.html... Cheers, Simon