ghc-events-0.2.0.1: Library and tool for parsing .eventlog files from GHC

GHC.RTS.Events

Contents

Synopsis

The event log types

data EventLog

Constructors

EventLog 

Fields

header :: Header
 
dat :: Data
 

Instances

Show EventLog 

data EventType

Constructors

EventType 

Fields

num :: EventTypeNum
 
desc :: EventTypeDesc
 
size :: Maybe EventTypeSize

Nothing indicates variable size

Instances

Show EventType 

data Event

Constructors

Event 

Instances

Show Event 

data EventTypeSpecificInfo

Constructors

Startup 

Fields

n_caps :: Int
 
EventBlock 

Fields

end_time :: Timestamp
 
cap :: Int
 
block_events :: [Event]
 
CreateThread 

Fields

thread :: !ThreadId
 
RunThread 

Fields

thread :: !ThreadId
 
StopThread 
ThreadRunnable 

Fields

thread :: !ThreadId
 
MigrateThread 

Fields

thread :: !ThreadId
 
newCap :: !Int
 
RunSpark 

Fields

thread :: !ThreadId
 
StealSpark 

Fields

thread :: !ThreadId
 
victimCap :: !Int
 
CreateSparkThread 

Fields

sparkThread :: !ThreadId
 
WakeupThread 

Fields

thread :: !ThreadId
 
otherCap :: !Int
 
Shutdown 
RequestSeqGC 
RequestParGC 
StartGC 
GCWork 
GCIdle 
GCDone 
EndGC 
Message 

Fields

msg :: String
 
UserMessage 

Fields

msg :: String
 
UnknownEvent 

Fields

ref :: !EventTypeNum
 

Instances

newtype Header

Constructors

Header 

Fields

eventTypes :: [EventType]
 

Instances

Show Header 

data Data

Constructors

Data 

Fields

events :: [Event]
 

Instances

Show Data 

type Timestamp = Word64

type ThreadId = Word32

Reading an event log from a file

readEventLogFromFile :: FilePath -> IO (Either String EventLog)

Utilities

data CapEvent

An event annotated with the Capability that generated it, if any

Constructors

CapEvent 

Fields

ce_cap :: Maybe Int
 
ce_event :: Event
 

groupEvents :: [Event] -> [(Maybe Int, [Event])]

sortGroups :: [(Maybe Int, [Event])] -> [CapEvent]

Sort the raw event stream by time, annotating each event with the capability that generated it.

Printing