X-Git-Url: http://git.megacz.com/?a=blobdiff_plain;f=ghc%2Frts%2FRtsFlags.h;h=26f9a9c689dcfd4d64bb59f451f6488c021d875f;hb=5d38ec160389ca25b405da32a8d94e2ed97d9bf4;hp=1642247ecc12323659744e85fe46e90bf8d9e214;hpb=bc210f7d267e8351ccb66972f4b3a650eb9338bb;p=ghc-hetmet.git diff --git a/ghc/rts/RtsFlags.h b/ghc/rts/RtsFlags.h index 1642247..26f9a9c 100644 --- a/ghc/rts/RtsFlags.h +++ b/ghc/rts/RtsFlags.h @@ -1,5 +1,5 @@ /* ----------------------------------------------------------------------------- - * $Id: RtsFlags.h,v 1.31 2001/03/14 11:18:18 sewardj Exp $ + * $Id: RtsFlags.h,v 1.34 2001/07/23 17:23:19 simonmar Exp $ * * (c) The GHC Team, 1998-1999 * @@ -33,11 +33,10 @@ struct GC_FLAGS { nat generations; nat steps; - - rtsBool ringBell; - + rtsBool compact; rtsBool squeezeUpdFrames; + rtsBool ringBell; rtsBool frontpanel; }; @@ -87,6 +86,10 @@ struct COST_CENTRE_FLAGS { struct PROFILING_FLAGS { unsigned int doHeapProfile; + nat profileFrequency; /* how often do you want */ + /* to sample (in ms) */ + + # define NO_HEAP_PROFILING 0 /* N.B. Used as indexes into arrays */ # define HEAP_BY_CCS 1 # define HEAP_BY_MOD 2 @@ -105,13 +108,15 @@ struct PROFILING_FLAGS { char* typeSelector; char* ccSelector; + }; #elif defined(DEBUG) # define NO_HEAP_PROFILING 0 # define HEAP_BY_INFOPTR 1 # define HEAP_BY_CLOSURE_TYPE 2 struct PROFILING_FLAGS { - unsigned int doHeapProfile; /* heap profile using symbol table */ + unsigned int doHeapProfile; /* heap profile using symbol table */ + }; #endif /* DEBUG || PROFILING */ @@ -124,7 +129,7 @@ struct CONCURRENT_FLAGS { /* currently the same as GRAN_STATS_FLAGS */ struct PAR_STATS_FLAGS { rtsBool Full; /* Full .gr profile (rtsTrue) or only END events? */ - // rtsBool Suppressed; /* No .gr profile at all */ + rtsBool Suppressed; /* No .gr profile at all */ rtsBool Binary; /* Binary profile? (not yet implemented) */ rtsBool Sparks; /* Info on sparks in profile? */ rtsBool Heap; /* Info on heap allocs in profile? */ @@ -135,7 +140,7 @@ struct PAR_STATS_FLAGS { struct PAR_DEBUG_FLAGS { /* flags to control debugging output in various subsystems */ rtsBool verbose : 1; /* 1 */ - rtsBool trace : 1; /* 2 */ + rtsBool bq : 1; /* 2 */ rtsBool schedule : 1; /* 4 */ rtsBool free : 1; /* 8 */ rtsBool resume : 1; /* 16 */ @@ -145,9 +150,10 @@ struct PAR_DEBUG_FLAGS { rtsBool tables : 1; /* 256 */ rtsBool packet : 1; /* 512 */ rtsBool pack : 1; /* 1024 */ + rtsBool paranoia : 1; /* 2048 */ }; -#define MAX_PAR_DEBUG_OPTION 10 +#define MAX_PAR_DEBUG_OPTION 11 #define PAR_DEBUG_MASK(n) ((nat)(ldexp(1,n))) #define MAX_PAR_DEBUG_MASK ((nat)(ldexp(1,(MAX_PAR_DEBUG_OPTION+1))-1)) @@ -155,7 +161,10 @@ struct PAR_FLAGS { struct PAR_STATS_FLAGS ParStats; /* profile and stats output */ struct PAR_DEBUG_FLAGS Debug; /* debugging options */ rtsBool outputDisabled; /* Disable output for performance purposes */ + rtsBool doFairScheduling; /* Fair-ish scheduling (round robin; no time-slices) */ nat packBufferSize; + nat thunksToPack; /* number of thunks in packet + 1 */ + nat globalising; /* globalisation scheme */ nat maxLocalSparks; /* spark pool size */ nat maxThreads; /* thread pool size */ nat maxFishes; /* max number of active fishes */