Copyright | (c) The University of Glasgow 1994-2000 |
---|---|
License | see libraries/base/LICENSE |
Maintainer | ghc-devs@haskell.org |
Stability | internal |
Portability | non-portable (GHC extensions) |
Safe Haskell | None |
Language | Haskell2010 |
GHC.RTS.Flags
Description
The API of this module is unstable and is tightly coupled to GHC's internals.
If depend on it, make sure to use a tight upper bound, e.g., base < 4.X
rather
than base < 5
, because the interface can change rapidly without much warning.
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 {
- gcFlags :: GCFlags
- concurrentFlags :: ConcFlags
- miscFlags :: MiscFlags
- debugFlags :: DebugFlags
- costCentreFlags :: CCFlags
- profilingFlags :: ProfFlags
- traceFlags :: TraceFlags
- tickyFlags :: TickyFlags
- parFlags :: ParFlags
- hpcFlags :: HpcFlags
- 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
- returnDecayFactor :: 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 :: IoManagerFlag
- numIoWorkerThreads :: Word32
- data IoManagerFlag
- data DebugFlags = DebugFlags {}
- data DoCostCentres
- data CCFlags = CCFlags {}
- data DoHeapProfile
- data ProfFlags = ProfFlags {
- doHeapProfile :: DoHeapProfile
- heapProfileInterval :: RtsTime
- heapProfileIntervalTicks :: Word
- startHeapProfileAtStartup :: Bool
- startTimeProfileAtStartup :: Bool
- showCCSOnException :: Bool
- automaticEraIncrement :: 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
- eraSelector :: Word
- data DoTrace
- data TraceFlags = TraceFlags {
- tracing :: DoTrace
- timestamp :: Bool
- traceScheduler :: Bool
- traceGc :: Bool
- traceNonmovingGc :: Bool
- sparksSampled :: Bool
- sparksFull :: Bool
- user :: Bool
- data TickyFlags = TickyFlags {
- showTickyStats :: Bool
- tickyFile :: Maybe FilePath
- data ParFlags = ParFlags {
- nCapabilities :: Word32
- migrate :: Bool
- maxLocalSparks :: Word32
- parGcEnabled :: Bool
- parGcGen :: Word32
- parGcLoadBalancingEnabled :: Bool
- parGcLoadBalancingGen :: Word32
- parGcNoSyncWithIdle :: Word32
- parGcThreads :: Word32
- setAffinity :: Bool
- data HpcFlags = HpcFlags {
- readTixFile :: Bool
- writeTixFile :: Bool
- data IoSubSystem
- getRTSFlags :: IO RTSFlags
- getGCFlags :: IO GCFlags
- getConcFlags :: IO ConcFlags
- getMiscFlags :: IO MiscFlags
- getDebugFlags :: IO DebugFlags
- getCCFlags :: IO CCFlags
- getProfFlags :: IO ProfFlags
- getTraceFlags :: IO TraceFlags
- getTickyFlags :: IO TickyFlags
- getParFlags :: IO ParFlags
- getHpcFlags :: IO HpcFlags
Documentation
Parameters of the runtime system
Since: base-4.8.0.0
Constructors
Fields
- gcFlags :: GCFlags
- concurrentFlags :: ConcFlags
- miscFlags :: MiscFlags
- debugFlags :: DebugFlags
- costCentreFlags :: CCFlags
- profilingFlags :: ProfFlags
- traceFlags :: TraceFlags
- tickyFlags :: TickyFlags
- parFlags :: ParFlags
- hpcFlags :: HpcFlags
Instances
Instances details
Instance details
Defined in GHC.Internal.RTS.Flags
Associated Types
Instance details
Defined in GHC.Internal.RTS.Flags
Since: base-4.8.0.0
Instance details
Defined in GHC.Internal.RTS.Flags
Since: base-4.15.0.0
Instance details
Defined in GHC.Internal.RTS.Flags
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
Instances details
Instance details
Defined in GHC.Internal.RTS.Flags
Methods
succ :: GiveGCStats -> GiveGCStats Source #
pred :: GiveGCStats -> GiveGCStats Source #
toEnum :: Int -> GiveGCStats Source #
fromEnum :: GiveGCStats -> Int Source #
enumFrom :: GiveGCStats -> [GiveGCStats] Source #
enumFromThen :: GiveGCStats -> GiveGCStats -> [GiveGCStats] Source #
enumFromTo :: GiveGCStats -> GiveGCStats -> [GiveGCStats] Source #
enumFromThenTo :: GiveGCStats -> GiveGCStats -> GiveGCStats -> [GiveGCStats] Source #
Instance details
Defined in GHC.Internal.RTS.Flags
Associated Types
Since: base-4.15.0.0
Instance details
Defined in GHC.Internal.RTS.Flags
Methods
from :: GiveGCStats -> Rep GiveGCStats x Source #
to :: Rep GiveGCStats x -> GiveGCStats Source #
Since: base-4.8.0.0
Instance details
Defined in GHC.Internal.RTS.Flags
Since: base-4.15.0.0
Instance details
Defined in GHC.Internal.RTS.Flags
Parameters of the garbage collector.
Since: base-4.8.0.0
Constructors
Fields
- 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
- returnDecayFactor :: Double
- pcFreeHeap :: Double
- generations :: Word32
- squeezeUpdFrames :: Bool
- compact :: Bool
True = "compact all the time"
- compactThreshold :: Double
- sweep :: Bool
use "mostly mark-sweep" instead of copying for the oldest generation
- ringBell :: Bool
- idleGCDelayTime :: RtsTime
- doIdleGC :: Bool
- heapBase :: Word
address to ask the OS for memory
- allocLimitGrace :: Word
- numa :: Bool
- numaMask :: Word
Instances
Instances details
Instance details
Defined in GHC.Internal.RTS.Flags
Associated Types
Instance details
Defined in GHC.Internal.RTS.Flags
Since: base-4.8.0.0
Instance details
Defined in GHC.Internal.RTS.Flags
Since: base-4.15.0.0
Instance details
Defined in GHC.Internal.RTS.Flags
Parameters concerning context switching
Since: base-4.8.0.0
Instances
Instances details
Instance details
Defined in GHC.Internal.RTS.Flags
Associated Types
Instance details
Defined in GHC.Internal.RTS.Flags
Since: base-4.8.0.0
Instance details
Defined in GHC.Internal.RTS.Flags
Since: base-4.15.0.0
Instance details
Defined in GHC.Internal.RTS.Flags
Miscellaneous parameters
Since: base-4.8.0.0
Constructors
Fields
- tickInterval :: RtsTime
- installSignalHandlers :: Bool
- installSEHHandlers :: Bool
- generateCrashDumpFile :: Bool
- generateStackTrace :: Bool
- machineReadable :: Bool
- disableDelayedOsMemoryReturn :: Bool
- internalCounters :: Bool
- linkerAlwaysPic :: Bool
- linkerMemBase :: Word
address to ask the OS for memory for the linker, 0 ==> off
- ioManager :: IoManagerFlag
- numIoWorkerThreads :: Word32
Instances
Instances details
Instance details
Defined in GHC.Internal.RTS.Flags
Associated Types
Instance details
Defined in GHC.Internal.RTS.Flags
Since: base-4.8.0.0
Instance details
Defined in GHC.Internal.RTS.Flags
Since: base-4.15.0.0
Instance details
Defined in GHC.Internal.RTS.Flags
data IoManagerFlag Source #
Since: base-4.21.0.0
Constructors
Unix only, non-threaded RTS only
cross-platform, threaded RTS only
Windows only
Windows only, non-threaded RTS only
Instances
Instances details
Instance details
Defined in GHC.Internal.RTS.Flags
Methods
succ :: IoManagerFlag -> IoManagerFlag Source #
pred :: IoManagerFlag -> IoManagerFlag Source #
toEnum :: Int -> IoManagerFlag Source #
fromEnum :: IoManagerFlag -> Int Source #
enumFrom :: IoManagerFlag -> [IoManagerFlag] Source #
enumFromThen :: IoManagerFlag -> IoManagerFlag -> [IoManagerFlag] Source #
enumFromTo :: IoManagerFlag -> IoManagerFlag -> [IoManagerFlag] Source #
enumFromThenTo :: IoManagerFlag -> IoManagerFlag -> IoManagerFlag -> [IoManagerFlag] Source #
Instance details
Defined in GHC.Internal.RTS.Flags
Instance details
Defined in GHC.Internal.RTS.Flags
Methods
(==) :: IoManagerFlag -> IoManagerFlag -> Bool Source #
(/=) :: IoManagerFlag -> IoManagerFlag -> Bool Source #
data DebugFlags Source #
Flags to control debugging output & extra checking in various subsystems.
Since: base-4.8.0.0
Constructors
Fields
- scheduler :: Bool
s
- interpreter :: Bool
i
- weak :: Bool
w
- gccafs :: Bool
G
- gc :: Bool
g
- nonmoving_gc :: Bool
n
- block_alloc :: Bool
b
- sanity :: Bool
S
- stable :: Bool
t
- prof :: Bool
p
- linker :: Bool
l
the object linker - apply :: Bool
a
- stm :: Bool
m
- squeeze :: Bool
z
stack squeezing & lazy blackholing - hpc :: Bool
c
coverage - sparks :: Bool
r
Instances
Instances details
Instance details
Defined in GHC.Internal.RTS.Flags
Associated Types
Since: base-4.15.0.0
Instance details
Defined in GHC.Internal.RTS.Flags
Methods
from :: DebugFlags -> Rep DebugFlags x Source #
to :: Rep DebugFlags x -> DebugFlags Source #
Since: base-4.8.0.0
Instance details
Defined in GHC.Internal.RTS.Flags
Since: base-4.15.0.0
Instance details
Defined in GHC.Internal.RTS.Flags
data DoCostCentres Source #
Should the RTS produce a cost-center summary?
Since: base-4.8.2.0
Instances
Instances details
Instance details
Defined in GHC.Internal.RTS.Flags
Methods
succ :: DoCostCentres -> DoCostCentres Source #
pred :: DoCostCentres -> DoCostCentres Source #
toEnum :: Int -> DoCostCentres Source #
fromEnum :: DoCostCentres -> Int Source #
enumFrom :: DoCostCentres -> [DoCostCentres] Source #
enumFromThen :: DoCostCentres -> DoCostCentres -> [DoCostCentres] Source #
enumFromTo :: DoCostCentres -> DoCostCentres -> [DoCostCentres] Source #
enumFromThenTo :: DoCostCentres -> DoCostCentres -> DoCostCentres -> [DoCostCentres] Source #
Instance details
Defined in GHC.Internal.RTS.Flags
Associated Types
Since: base-4.15.0.0
Instance details
Defined in GHC.Internal.RTS.Flags
Methods
from :: DoCostCentres -> Rep DoCostCentres x Source #
to :: Rep DoCostCentres x -> DoCostCentres Source #
Since: base-4.8.0.0
Instance details
Defined in GHC.Internal.RTS.Flags
Since: base-4.15.0.0
Instance details
Defined in GHC.Internal.RTS.Flags
Parameters pertaining to the cost-center profiler.
Since: base-4.8.0.0
Instances
Instances details
Instance details
Defined in GHC.Internal.RTS.Flags
Associated Types
Instance details
Defined in GHC.Internal.RTS.Flags
Since: base-4.8.0.0
Instance details
Defined in GHC.Internal.RTS.Flags
Since: base-4.15.0.0
Instance details
Defined in GHC.Internal.RTS.Flags
data DoHeapProfile Source #
What sort of heap profile are we collecting?
Since: base-4.8.2.0
Constructors
Since: base-4.20.0.0
Instances
Instances details
Instance details
Defined in GHC.Internal.RTS.Flags
Methods
succ :: DoHeapProfile -> DoHeapProfile Source #
pred :: DoHeapProfile -> DoHeapProfile Source #
toEnum :: Int -> DoHeapProfile Source #
fromEnum :: DoHeapProfile -> Int Source #
enumFrom :: DoHeapProfile -> [DoHeapProfile] Source #
enumFromThen :: DoHeapProfile -> DoHeapProfile -> [DoHeapProfile] Source #
enumFromTo :: DoHeapProfile -> DoHeapProfile -> [DoHeapProfile] Source #
enumFromThenTo :: DoHeapProfile -> DoHeapProfile -> DoHeapProfile -> [DoHeapProfile] Source #
Instance details
Defined in GHC.Internal.RTS.Flags
Associated Types
Since: base-4.15.0.0
Instance details
Defined in GHC.Internal.RTS.Flags
Methods
from :: DoHeapProfile -> Rep DoHeapProfile x Source #
to :: Rep DoHeapProfile x -> DoHeapProfile Source #
Since: base-4.8.0.0
Instance details
Defined in GHC.Internal.RTS.Flags
Since: base-4.15.0.0
Instance details
Defined in GHC.Internal.RTS.Flags
Parameters of the cost-center profiler
Since: base-4.8.0.0
Constructors
Fields
- doHeapProfile :: DoHeapProfile
- heapProfileInterval :: RtsTime
time between samples
- heapProfileIntervalTicks :: Word
ticks between samples (derived)
- startHeapProfileAtStartup :: Bool
- startTimeProfileAtStartup :: Bool
Since: base-4.20.0.0
- showCCSOnException :: Bool
- automaticEraIncrement :: Bool
Since: ghc-internal-4.20.0.0
- 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
- eraSelector :: Word
Since: base-4.20.0.0
Instances
Instances details
Instance details
Defined in GHC.Internal.RTS.Flags
Associated Types
Instance details
Defined in GHC.Internal.RTS.Flags
Since: base-4.8.0.0
Instance details
Defined in GHC.Internal.RTS.Flags
Since: base-4.15.0.0
Instance details
Defined in GHC.Internal.RTS.Flags
Is event tracing enabled?
Since: base-4.8.2.0
Constructors
no tracing
send tracing events to the event log
send tracing events to stderr
Instances
Instances details
Instance details
Defined in GHC.Internal.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 #
Instance details
Defined in GHC.Internal.RTS.Flags
Associated Types
Instance details
Defined in GHC.Internal.RTS.Flags
Since: base-4.8.0.0
Instance details
Defined in GHC.Internal.RTS.Flags
Since: base-4.15.0.0
Instance details
Defined in GHC.Internal.RTS.Flags
data TraceFlags Source #
Parameters pertaining to event tracing
Since: base-4.8.0.0
Constructors
Fields
- tracing :: DoTrace
- timestamp :: Bool
show timestamp in stderr output
- traceScheduler :: Bool
trace scheduler events
- traceGc :: Bool
trace GC events
- traceNonmovingGc :: Bool
trace nonmoving GC heap census samples
- sparksSampled :: Bool
trace spark events by a sampled method
- sparksFull :: Bool
trace spark events 100% accurately
- user :: Bool
trace user events (emitted from Haskell code)
Instances
Instances details
Instance details
Defined in GHC.Internal.RTS.Flags
Associated Types
Since: base-4.15.0.0
Instance details
Defined in GHC.Internal.RTS.Flags
Methods
from :: TraceFlags -> Rep TraceFlags x Source #
to :: Rep TraceFlags x -> TraceFlags Source #
Since: base-4.8.0.0
Instance details
Defined in GHC.Internal.RTS.Flags
Since: base-4.15.0.0
Instance details
Defined in GHC.Internal.RTS.Flags
data TickyFlags Source #
Parameters pertaining to ticky-ticky profiler
Since: base-4.8.0.0
Instances
Instances details
Instance details
Defined in GHC.Internal.RTS.Flags
Associated Types
Since: base-4.15.0.0
Instance details
Defined in GHC.Internal.RTS.Flags
Methods
from :: TickyFlags -> Rep TickyFlags x Source #
to :: Rep TickyFlags x -> TickyFlags Source #
Since: base-4.8.0.0
Instance details
Defined in GHC.Internal.RTS.Flags
Since: base-4.15.0.0
Instance details
Defined in GHC.Internal.RTS.Flags
Parameters pertaining to parallelism
Since: base-4.8.0.0
Constructors
Fields
- nCapabilities :: Word32
- migrate :: Bool
- maxLocalSparks :: Word32
- parGcEnabled :: Bool
- parGcGen :: Word32
- parGcLoadBalancingEnabled :: Bool
- parGcLoadBalancingGen :: Word32
- parGcNoSyncWithIdle :: Word32
- parGcThreads :: Word32
- setAffinity :: Bool
Instances
Instances details
Instance details
Defined in GHC.Internal.RTS.Flags
Associated Types
Instance details
Defined in GHC.Internal.RTS.Flags
Since: base-4.8.0.0
Instance details
Defined in GHC.Internal.RTS.Flags
Since: base-4.15.0.0
Instance details
Defined in GHC.Internal.RTS.Flags
Parameters pertaining to Haskell program coverage (HPC)
Since: base-4.20.0.0
Constructors
Fields
- readTixFile :: Bool
Controls whether a
program.tix
file is read at the start of execution to initialize the RTS internal HPC datastructures. - writeTixFile :: Bool
Controls whether the
program.tix
file should be written after the execution of the program.
Instances
Instances details
Instance details
Defined in GHC.Internal.RTS.Flags
Associated Types
Instance details
Defined in GHC.Internal.RTS.Flags
Since: base-4.20.0.0
Instance details
Defined in GHC.Internal.RTS.Flags
Since: base-4.20.0.0
Instance details
Defined in GHC.Internal.RTS.Flags
data IoSubSystem Source #
The I/O SubSystem to use in the program.
Since: base-4.9.0.0
Constructors
Use a POSIX I/O Sub-System
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
Instances details
Instance details
Defined in GHC.Internal.IO.SubSystem
Methods
succ :: IoSubSystem -> IoSubSystem Source #
pred :: IoSubSystem -> IoSubSystem Source #
toEnum :: Int -> IoSubSystem Source #
fromEnum :: IoSubSystem -> Int Source #
enumFrom :: IoSubSystem -> [IoSubSystem] Source #
enumFromThen :: IoSubSystem -> IoSubSystem -> [IoSubSystem] Source #
enumFromTo :: IoSubSystem -> IoSubSystem -> [IoSubSystem] Source #
enumFromThenTo :: IoSubSystem -> IoSubSystem -> IoSubSystem -> [IoSubSystem] Source #
Instance details
Defined in GHC.Internal.IO.SubSystem
Instance details
Defined in GHC.Internal.IO.SubSystem
Methods
(==) :: IoSubSystem -> IoSubSystem -> Bool Source #
(/=) :: IoSubSystem -> IoSubSystem -> Bool Source #
getRTSFlags :: IO RTSFlags Source #
getGCFlags :: IO GCFlags Source #
getCCFlags :: IO CCFlags Source #
getParFlags :: IO ParFlags Source #
getHpcFlags :: IO HpcFlags Source #