Systems and methods for summarization and visualization of trace data
Systems and methods for visualizing and/or analyzing trace data collected during execution of a computer system are described. Algorithms and user interface elements are disclosed for providing user interfaces, data summarization technologies, and/or underlying file structures to facilitate such visualization and/or analysis. Trace data history summarization algorithms are also disclosed. Various combinations of the disclosed systems and methods may be employed, depending on the particular requirements of each implementation.
1. A computer-implemented method to summarize trace data comprising a plurality of trace events to facilitate visual analysis of said trace data, comprising:
assigning one or more of said trace events within a received stream of said trace events associated with a unit of execution into one or more substreams;
for each said substream, creating a plurality of summary entries from said substream, wherein each of said summary entries is associated with one or more of a plurality of summary levels, and wherein each of said summary entries represents a plurality of said trace events,
wherein each of said summary entries comprises a representation of said plurality of said trace events that occurred within a time range corresponding to said plurality of said trace events, wherein each of said representations comprises a trace event signature; and
translating said summary entries into a graphical representation to facilitate said visual analysis of said trace data.
2. A computer-implemented method to facilitate and accelerate visual analysis of a computer system, comprising:
receiving a set of trace events from an execution of one or more computer programs by one or more target processors for a time period;
pre-computing multiple levels of representations of sequences of trace events into summary levels;
storing said summary levels in one or more computer-readable storage media; and
in response to a request to display a selected portion of one or more of said trace events, retrieving a subset of said pre-computed representations of sequences of trace events from one of a determined one of said summary levels and rendering it on a display device,
wherein each of said pre-computed representations of sequences of trace events comprises a representation of a plurality of said trace events that occurred within a time range corresponding to said plurality of said trace events, wherein each of said representations comprises a trace event signature; and
translating said trace event signatures into a graphical representation to facilitate said visual analysis of said trace data.
3. An apparatus for facilitating and accelerating visual analysis of a computer system, comprising:
a summary level pre-computer, wherein said summary level pre-computer generates multiple levels of representations of sequences of trace events from an execution of one or more computer programs by one or more target processors for a time period into summary levels;
one or more computer-readable storage media for storing said summary levels; and
a rendering engine that, in response to a request to display a selected portion of one or more of said trace events, retrieves a subset of said pre-computed representations of sequences of trace events from a determined one of said summary levels and renders it on a display device,
wherein each of said pre-computed representations of sequences of trace events comprises a representation of a plurality of said trace events that occurred within a time range corresponding to said plurality of said trace events, wherein each of said representations comprises a trace event signature; and
translating said trace event signatures into a graphical representation to facilitate said visual analysis of said trace data.