summaryrefslogtreecommitdiff
path: root/rts/sm/Scav.c-inc
diff options
context:
space:
mode:
authorSimon Marlow <simonmarhaskell@gmail.com>2008-04-16 22:12:24 +0000
committerSimon Marlow <simonmarhaskell@gmail.com>2008-04-16 22:12:24 +0000
commita75a8790410ce3ffb439bfd0b7c3999e7df72eb1 (patch)
tree426e006bbb3fc173cbe2bd615d947ecd5c782f01 /rts/sm/Scav.c-inc
parent96195367ad299bc3be251535bcff7fb75d097e07 (diff)
downloadhaskell-a75a8790410ce3ffb439bfd0b7c3999e7df72eb1.tar.gz
improvements to +RTS -s output
- count and report number of parallel collections - calculate bytes scanned in addition to bytes copied per thread - calculate "work balance factor" - tidy up the formatting a bit
Diffstat (limited to 'rts/sm/Scav.c-inc')
-rw-r--r--rts/sm/Scav.c-inc6
1 files changed, 3 insertions, 3 deletions
diff --git a/rts/sm/Scav.c-inc b/rts/sm/Scav.c-inc
index 6f852035b5..64677c0a5a 100644
--- a/rts/sm/Scav.c-inc
+++ b/rts/sm/Scav.c-inc
@@ -444,15 +444,15 @@ scavenge_block (bdescr *bd)
}
if (p > bd->free) {
+ gct->copied += ws->todo_free - bd->free;
bd->free = p;
}
debugTrace(DEBUG_gc, " scavenged %ld bytes",
(unsigned long)((bd->free - bd->u.scan) * sizeof(W_)));
- // update stats: this is a block that has been copied & scavenged
- gct->copied += bd->free - bd->u.scan;
-
+ // update stats: this is a block that has been scavenged
+ gct->scanned += bd->free - bd->u.scan;
bd->u.scan = bd->free;
}