A system for conducting performance analysis for executing tasks. The analysis
involves generating a variety of trace information related to performance measures,
including parallelism-related information, during execution of the task. In order
to generate the trace information, target source code of interest is compiled in
such a manner that executing the resulting executable code will generate execution
trace information composed of a series of events. Each event stores trace information
related to a variety of performance measures for the one or more processors and
protection domains used. After the execution trace information has been generated,
the system can use that trace information and a trace information description file
to produce useful performance measure information. The trace information description
file contains information that describes the types of execution events as well
as the structure of the stored information. The system uses the trace information
description file to organize the information in the trace information file, extracts
a variety of types of performance measure information from the organized trace
information, and formats the extracted information for display. The system can
use default or user-defined functions to extract and format trace information for
display. After the system displays one or more types of performance measure information,
a user of the system can then interact with the system in a variety of ways to
obtain other useful performance analysis information.