Nathaniel Guy - Seattle WA, US Chad Hinkle - Redmond WA, US Mark Jawad - Redmond WA, US Steve Rabin - Bothell WA, US
International Classification:
G06F 9/45
US Classification:
717155
Abstract:
A method and apparatus that utilizes techniques for formatting assembly and/or machine code, including using arrows, indentations and textual symbols, so that a programmer who reads the code has an enhanced understanding of the program flow. Different methods of assessing computing time complexity (e.g., the up branch method and the strongly connected subgraph method) have strengths and weaknesses but benefit from being used together.
Method And Apparatus For Visualizing Computer Program Execution
Chad Hinkle - Redmond WA, US Steven Rabin - Bothell WA, US
International Classification:
G06F 9/44
US Classification:
717130
Abstract:
Analysis data from the execution of a computer program is collected. The analysis data may include samples of two different types of performance data from the execution of the computer program. Performance data may include sampled hardware performance counter data and sampled executing functions. The performance data is used to create a composite view of the data. The composite view may allow a user to efficiently correlate the different types of performance data by using a colored visual display.
Methods And/Or Systems For Determining A Series Of Return Callstacks
To reconstruct a call stack, a range of call addresses is determined. Based on the range of addresses, raw stack data is extracted based on the execution of a computer program. The raw stack data is parsed to reconstruct a call stack (or a series of call stacks). In obtaining the call stack, a depth between a function and a return address is calculated.
System And Method To Infer Call Stacks From Minimal Sampled Profile Data
Methods and systems for inferring call stacks in a program, such as a video game or simulation program, are described herein. The call stack data can be inferred using a database of previously captured call stacks along with a minimal set of identifiers that fingerprint each call stack. If just the minimal fingerprint can be captured during a subsequent profile, then the corresponding call stack can be inferred.