Measurement and reporting of performance event rates
AssigneeMicrosoft Corporation
InventorsHazim Shafi, Khaled S. Sedky
Life of this patent
Estimating the term…
Abstract
Methods and systems are disclosed for measuring performance event rates at a computer and reporting the performance event rates using timelines. A particular method tracks, for a time period, the occurrences of a particular event at a computer. Event rates corresponding to different time segments within the time period are calculated, and the time segments are assigned colors based on their associated event rates. The event rates are used to display a colored timeline for the time period, including displaying a colored timeline portion for each time segment in its associated color.
Claims20
A system comprising:
- a performance event tracking engine configured to:
- track a performance event during execution of each of a plurality of processes on a multi-threaded computer;
- and
- generate an event log for each of the plurality of processes, wherein the event log comprises a plurality of records, and wherein each record includes a number of occurrences of the performance event, a timestamp, and a thread identifier;
- an event log processing engine configured to calculate event rate data for each particular process of the plurality of processes based on the event log for each particular process;
- and
- a display engine configured to:
- simultaneously display a plurality of timelines, wherein each timeline of the plurality of timelines corresponds to the event rate data for a corresponding process of the plurality of processes;
- receive a selection of a portion of a particular timeline;
- display call-stack information for the selected portion of the particular timeline;
- and
- zoom in on the selected portion of the particular timeline.
A method comprising:
- tracking, for a time period, each occurrence of an event occurring during execution at a computer, wherein the time period includes a plurality of time segments;
- calculating an event rate based on a number of tracked occurrences of the event for each time segment of the plurality of time segments;
- associating each time segment with a color of a color palette, wherein the color is determined based on the event rate corresponding to the time segment;
- and
- displaying a colored timeline corresponding to the time period, the colored timeline including a plurality of color displays, each color display corresponding to a particular time segment and presented in the color associated with the particular time segment.
A method comprising:
- receiving sample data for a thread executing on a multi-threaded computer, wherein the sample data is related to a performance event of the multi-threaded computer, wherein the sample data includes a plurality of samples, wherein each sample of the plurality of samples indicates a number of occurrences of the performance event during execution of the thread during a time period, and wherein each sample has an associated timestamp;
- calculating a plurality of time differences from the sample data, wherein each time difference is a time difference between two consecutive samples of the plurality of samples;
- calculating a plurality of performance event rates based on the plurality of time differences;
- determining a range of the plurality of performance event rates;
- assigning a color spectrum to the range of the plurality of performance event rates;
- generating a colored timeline display corresponding to the time period, the colored timeline display based on the plurality of performance event rates and the color spectrum;
- and
- displaying the colored timeline display at a display device.
Dependencies are inferred from the claim text.