| Safe Haskell | None | 
|---|---|
| Language | Haskell2010 | 
GHC.RTS.Flags
Description
Accessors to GHC RTS flags.
 Descriptions of flags can be seen in
 GHC User's Guide,
 or by running RTS help message using +RTS --help.
Since: base-4.8.0.0
Synopsis
- type RtsTime = Word64
 - data RTSFlags = RTSFlags {}
 - data GiveGCStats
 - data GCFlags = GCFlags {
- statsFile :: Maybe FilePath
 - giveStats :: GiveGCStats
 - maxStkSize :: Word32
 - initialStkSize :: Word32
 - stkChunkSize :: Word32
 - stkChunkBufferSize :: Word32
 - maxHeapSize :: Word32
 - minAllocAreaSize :: Word32
 - largeAllocLim :: Word32
 - nurseryChunkSize :: Word32
 - minOldGenSize :: Word32
 - heapSizeSuggestion :: Word32
 - heapSizeSuggestionAuto :: Bool
 - oldGenFactor :: Double
 - pcFreeHeap :: Double
 - generations :: Word32
 - squeezeUpdFrames :: Bool
 - compact :: Bool
 - compactThreshold :: Double
 - sweep :: Bool
 - ringBell :: Bool
 - idleGCDelayTime :: RtsTime
 - doIdleGC :: Bool
 - heapBase :: Word
 - allocLimitGrace :: Word
 - numa :: Bool
 - numaMask :: Word
 
 - data ConcFlags = ConcFlags {}
 - data MiscFlags = MiscFlags {
- tickInterval :: RtsTime
 - installSignalHandlers :: Bool
 - installSEHHandlers :: Bool
 - generateCrashDumpFile :: Bool
 - generateStackTrace :: Bool
 - machineReadable :: Bool
 - disableDelayedOsMemoryReturn :: Bool
 - internalCounters :: Bool
 - linkerAlwaysPic :: Bool
 - linkerMemBase :: Word
 - ioManager :: IoSubSystem
 - numIoWorkerThreads :: Word32
 
 - data DebugFlags = DebugFlags {}
 - data DoCostCentres
 - data CCFlags = CCFlags {}
 - data DoHeapProfile
 - data ProfFlags = ProfFlags {
- doHeapProfile :: DoHeapProfile
 - heapProfileInterval :: RtsTime
 - heapProfileIntervalTicks :: Word
 - includeTSOs :: Bool
 - showCCSOnException :: Bool
 - maxRetainerSetSize :: Word
 - ccsLength :: Word
 - modSelector :: Maybe String
 - descrSelector :: Maybe String
 - typeSelector :: Maybe String
 - ccSelector :: Maybe String
 - ccsSelector :: Maybe String
 - retainerSelector :: Maybe String
 - bioSelector :: Maybe String
 
 - data DoTrace
 - data TraceFlags = TraceFlags {
- tracing :: DoTrace
 - timestamp :: Bool
 - traceScheduler :: Bool
 - traceGc :: Bool
 - traceNonmovingGc :: Bool
 - sparksSampled :: Bool
 - sparksFull :: Bool
 - user :: Bool
 
 - data TickyFlags = TickyFlags {}
 - data ParFlags = ParFlags {}
 - data IoSubSystem
 - getRTSFlags :: IO RTSFlags
 - getGCFlags :: IO GCFlags
 - getConcFlags :: IO ConcFlags
 - getMiscFlags :: IO MiscFlags
 - getIoManagerFlag :: IO IoSubSystem
 - getDebugFlags :: IO DebugFlags
 - getCCFlags :: IO CCFlags
 - getProfFlags :: IO ProfFlags
 - getTraceFlags :: IO TraceFlags
 - getTickyFlags :: IO TickyFlags
 - getParFlags :: IO ParFlags
 
Documentation
Parameters of the runtime system
Since: base-4.8.0.0
Constructors
| RTSFlags | |
Fields  | |
Instances
data GiveGCStats Source #
Should we produce a summary of the garbage collector statistics after the program has exited?
Since: base-4.8.2.0
Instances
Parameters of the garbage collector.
Since: base-4.8.0.0
Constructors
| GCFlags | |
Fields 
  | |
Instances
Parameters concerning context switching
Since: base-4.8.0.0
Constructors
| ConcFlags | |
Fields  | |
Instances
| Show ConcFlags # | Since: base-4.8.0.0  | 
| Generic ConcFlags # | Since: base-4.15.0.0  | 
| type Rep ConcFlags # | |
Defined in GHC.RTS.Flags type Rep ConcFlags = D1 ('MetaData "ConcFlags" "GHC.RTS.Flags" "base" 'False) (C1 ('MetaCons "ConcFlags" 'PrefixI 'True) (S1 ('MetaSel ('Just "ctxtSwitchTime") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 RtsTime) :*: S1 ('MetaSel ('Just "ctxtSwitchTicks") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Int)))  | |
Miscellaneous parameters
Since: base-4.8.0.0
Constructors
| MiscFlags | |
Fields 
  | |
Instances
data DebugFlags Source #
Flags to control debugging output & extra checking in various subsystems.
Since: base-4.8.0.0
Constructors
| DebugFlags | |
Fields 
  | |
Instances
data DoCostCentres Source #
Should the RTS produce a cost-center summary?
Since: base-4.8.2.0
Instances
Parameters pertaining to the cost-center profiler.
Since: base-4.8.0.0
Constructors
| CCFlags | |
Fields  | |
Instances
| Show CCFlags # | Since: base-4.8.0.0  | 
| Generic CCFlags # | Since: base-4.15.0.0  | 
| type Rep CCFlags # | |
Defined in GHC.RTS.Flags type Rep CCFlags = D1 ('MetaData "CCFlags" "GHC.RTS.Flags" "base" 'False) (C1 ('MetaCons "CCFlags" 'PrefixI 'True) (S1 ('MetaSel ('Just "doCostCentres") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 DoCostCentres) :*: (S1 ('MetaSel ('Just "profilerTicks") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Int) :*: S1 ('MetaSel ('Just "msecsPerTick") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Int))))  | |
data DoHeapProfile Source #
What sort of heap profile are we collecting?
Since: base-4.8.2.0
Constructors
| NoHeapProfiling | |
| HeapByCCS | |
| HeapByMod | |
| HeapByDescr | |
| HeapByType | |
| HeapByRetainer | |
| HeapByLDV | |
| HeapByClosureType | 
Instances
Parameters of the cost-center profiler
Since: base-4.8.0.0
Constructors
| ProfFlags | |
Fields 
  | |
Instances
Is event tracing enabled?
Since: base-4.8.2.0
Constructors
| TraceNone | no tracing  | 
| TraceEventLog | send tracing events to the event log  | 
| TraceStderr | send tracing events to   | 
Instances
| Enum DoTrace # | Since: base-4.8.0.0  | 
Defined in GHC.RTS.Flags Methods succ :: DoTrace -> DoTrace Source # pred :: DoTrace -> DoTrace Source # toEnum :: Int -> DoTrace Source # fromEnum :: DoTrace -> Int Source # enumFrom :: DoTrace -> [DoTrace] Source # enumFromThen :: DoTrace -> DoTrace -> [DoTrace] Source # enumFromTo :: DoTrace -> DoTrace -> [DoTrace] Source # enumFromThenTo :: DoTrace -> DoTrace -> DoTrace -> [DoTrace] Source #  | |
| Show DoTrace # | Since: base-4.8.0.0  | 
| Generic DoTrace # | Since: base-4.15.0.0  | 
| type Rep DoTrace # | |
Defined in GHC.RTS.Flags  | |
data TraceFlags Source #
Parameters pertaining to event tracing
Since: base-4.8.0.0
Constructors
| TraceFlags | |
Fields 
  | |
Instances
data TickyFlags Source #
Parameters pertaining to ticky-ticky profiler
Since: base-4.8.0.0
Constructors
| TickyFlags | |
Fields 
  | |
Instances
| Show TickyFlags # | Since: base-4.8.0.0  | 
Defined in GHC.RTS.Flags  | |
| Generic TickyFlags # | Since: base-4.15.0.0  | 
Defined in GHC.RTS.Flags  | |
| type Rep TickyFlags # | |
Defined in GHC.RTS.Flags type Rep TickyFlags = D1 ('MetaData "TickyFlags" "GHC.RTS.Flags" "base" 'False) (C1 ('MetaCons "TickyFlags" 'PrefixI 'True) (S1 ('MetaSel ('Just "showTickyStats") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Bool) :*: S1 ('MetaSel ('Just "tickyFile") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe FilePath))))  | |
Parameters pertaining to parallelism
Since: base-4.8.0.0
Constructors
| ParFlags | |
Fields 
  | |
Instances
data IoSubSystem Source #
The I/O SubSystem to use in the program.
Since: base-4.9.0.0
Constructors
| IoPOSIX | Use a POSIX I/O Sub-System  | 
| IoNative | Use platform native Sub-System. For unix OSes this is the same as IoPOSIX, but on Windows this means use the Windows native APIs for I/O, including IOCP and RIO.  | 
Instances
getRTSFlags :: IO RTSFlags Source #
getGCFlags :: IO GCFlags Source #
getIoManagerFlag :: IO IoSubSystem Source #
Needed to optimize support for different IO Managers on Windows. See Note [The need for getIoManagerFlag]
getCCFlags :: IO CCFlags Source #
getParFlags :: IO ParFlags Source #