correct the +RTS -? docs for -A (default is 512k not 256k)
[ghc-hetmet.git] / rts / RtsFlags.c
index 3fac86b..0794dc4 100644 (file)
 #include <ctype.h>
 #endif
 
-#ifdef HAVE_UNISTD_H
-#include <unistd.h>
-#endif
-
-#ifdef HAVE_WINDOWS_H
-#include <windows.h>
-#endif
-
 #include <stdlib.h>
 #include <string.h>
 
@@ -233,6 +225,7 @@ void initRtsFlagsDefaults(void)
     RtsFlags.ParFlags.parGcEnabled      = 1;
     RtsFlags.ParFlags.parGcGen          = 1;
     RtsFlags.ParFlags.parGcLoadBalancing = 1;
+    RtsFlags.ParFlags.setAffinity       = 0;
 #endif
 
 #ifdef PAR
@@ -360,7 +353,7 @@ usage_text[] = {
 "  -K<size> Sets the maximum stack size (default 8M)  Egs: -K32k   -K512k",
 "  -k<size> Sets the initial thread stack size (default 1k)  Egs: -k4k   -k2m",
 "",
-"  -A<size> Sets the minimum allocation area size (default 256k) Egs: -A1m -A10k",
+"  -A<size> Sets the minimum allocation area size (default 512k) Egs: -A1m -A10k",
 "  -M<size> Sets the maximum heap size (default unlimited)  Egs: -M256k -M1G",
 "  -H<size> Sets the minimum heap size (default 0M)   Egs: -H24m  -H1G",
 "  -m<n>    Minimum % of heap which must be available (default 3%)",
@@ -476,6 +469,8 @@ usage_text[] = {
 "  -N        Determine the number of processors to use automatically",
 "  -q1       Use one OS thread for GC (turns off parallel GC)",
 "  -qg<n>    Use parallel GC only for generations >= <n> (default: 1)",
+"  -qb       Disable load-balancing in the parallel GC",
+"  -qa       Use the OS to set thread affinity",
 "  -qm       Don't automatically migrate threads between CPUs",
 "  -qw       Migrate a thread to the current CPU when it is woken up",
 #endif
@@ -1233,6 +1228,9 @@ error = rtsTrue;
                    case 'b':
                        RtsFlags.ParFlags.parGcLoadBalancing = rtsFalse;
                        break;
+                   case 'a':
+                       RtsFlags.ParFlags.setAffinity = rtsTrue;
+                       break;
                    case 'm':
                        RtsFlags.ParFlags.migrate = rtsFalse;
                        break;