summaryrefslogtreecommitdiff
path: root/rts/RtsFlags.c
diff options
context:
space:
mode:
authorSimon Marlow <marlowsd@gmail.com>2008-06-09 17:49:43 +0000
committerSimon Marlow <marlowsd@gmail.com>2008-06-09 17:49:43 +0000
commit74ee9df9f9e79e7110e9d8541b84010f35c464c5 (patch)
treea7a10946773a1f12d367c063e4ac343e6580d9ad /rts/RtsFlags.c
parent54fe7a440247fbd0f853d07da23d48b50a229a00 (diff)
downloadhaskell-74ee9df9f9e79e7110e9d8541b84010f35c464c5.tar.gz
Experimental "mark-region" strategy for the old generation
Sometimes better than the default copying, enabled by +RTS -w
Diffstat (limited to 'rts/RtsFlags.c')
-rw-r--r--rts/RtsFlags.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/rts/RtsFlags.c b/rts/RtsFlags.c
index 81bac4e9b6..0618386ae5 100644
--- a/rts/RtsFlags.c
+++ b/rts/RtsFlags.c
@@ -147,6 +147,7 @@ void initRtsFlagsDefaults(void)
#endif
RtsFlags.GcFlags.compact = rtsFalse;
RtsFlags.GcFlags.compactThreshold = 30.0;
+ RtsFlags.GcFlags.sweep = rtsFalse;
#ifdef RTS_GTK_FRONTPANEL
RtsFlags.GcFlags.frontpanel = rtsFalse;
#endif
@@ -353,6 +354,7 @@ usage_text[] = {
" -c<n> Auto-enable compaction of the oldest generation when live data is",
" at least <n>% of the maximum heap size set with -M (default: 30%)",
" -c Enable compaction for all major collections",
+" -w Use mark-region for the oldest generation (experimental)",
#if defined(THREADED_RTS)
" -I<sec> Perform full GC after <sec> idle time (default: 0.3, 0 == off)",
#endif
@@ -750,6 +752,10 @@ error = rtsTrue;
}
break;
+ case 'w':
+ RtsFlags.GcFlags.sweep = rtsTrue;
+ break;
+
case 'F':
RtsFlags.GcFlags.oldGenFactor = atof(rts_argv[arg]+2);