Next: Easy Up: Dynamic Analysis Tools Previous: Racy

Event Tracing of pC++ Programs

We have implemented an extensive system for tracing pC++ program events. Trace instrumentation support is similar to profiling. In addition, we have implemented several utilities for event trace analysis (see also Figure 1):

Merging:

Traced pC++ programs produce an event log for each node. The single node traces must be merged into one global event trace, with all event records sorted by increasing timestamps. This is done with the tool se_merge. If the target machine does not have a hardware global clock, se_merge will establish a global time reference for the event traces by correcting timestamps (using synchronization and message passing events of the pC++ runtime system).

Trace Conversion:
The utility tool se_convert converts traces to the SDDF format used with the Pablo performance analysis environment [10] or to the ALOG format used in the Upshot event display tool [2]. It also can produce a simple user-readable ASCII dump of the binary trace.
Trace Analysis and Visualization:
The trace files can also be processed directly with the SIMPLE event trace analysis and visualization environment or other tools based on the TDL/POET event trace interface [5]. These tools use the Trace Description Language (TDL) output of the Instrumentor to access the trace files.



Next: Easy Up: Dynamic Analysis Tools Previous: Racy


mohr@cs.uoregon.edu
Mon May 23 10:02:30 PDT 1994