next up previous
Next: Trace Reader Library Up: Enabling Online Trace Analysis Previous: Triggers for Trace Dumping


Background Merging and Preparation

Previously, TAU wrote the event description files to disk when the application terminated. While this scheme was sufficient for post-mortem merging and conversion of event traces, it could not be directly applied for online analysis of event traces. This was due to the absence of event names that are needed for local to global event identifier conversion. To overcome this limitation, we have re-designed our trace merging tool, TAUmerge, so it executes concurrently with the executing application generating the trace files. From each process's trace file, TAUmerge reads event records and examines their globally synchronized timestamps to determine which event is to be recorded next in the ordered output trace file. When it encounters a local event identifier that it has not seen before, it reads the event definition file associated with the given process and updates its internal tables to map that local event identifier to a global event identifier using its event name as a key. The trace generation library ensures that event tables are written to disk before writing trace records that contain one or more new events. A new event is defined as an event whose properties are not recorded in the event description file written previously by the application. This scheme, of writing event definitions prior to trace records, is also used by the TAUmerge tool while writing a merged stream of events and event definitions. It ensures that the trace analysis tools down the line that read the merged traces also read the global event definitions and refresh their internal tables when they encounter an event for which event definitions are not known.


next up previous
Next: Trace Reader Library Up: Enabling Online Trace Analysis Previous: Triggers for Trace Dumping
Sameer Suresh Shende 2003-09-12