A method and system for monitoring execution performance of a program is
provided. Profiling functionality may be qualified by setting various
qualifying flags at the request of a user. These qualifying flags may be
used to limit the amount of trace data being generated or processed,
thereby providing a more focused picture of an application's execution to
the user. One or more trace,qualifying conditions are selectable by a user
and are used during a profiling phase of application execution or during a
post-processing phase of analyzing the application execution. During a
profiling phase, an occurrence of a selected event or a timer interrupt is
detected, and a determination is made as to whether a trace qualifying
condition has been previously selected. In response to a determination
that a trace qualifying condition has been selected, a trace record is
then generated. During a post-processing phase, a trace record is read
that contains a trace condition mask that stores the trace qualifying
conditions that were active when the trace record was generated. The trace
record is further processed in response to a determination that the trace
condition mask has at least one active user-specified trace qualifying
condition.