Abstract:
The present technology is directed to a non-limiting system and method for generating an abstract code execution timeline from repetitive programs, such as video games and simulations. As a non-limiting example, a statistical sampling profile is first taken of the running program, and then the data is converted into several representations. By selecting representative functions based on sampling frequency and call tree hierarchy and then sorting those functions chronologically and hierarchically, an abstract code execution timeline can be generated that summarizes execution within a single repetitive time period, such as a video frame. This timeline is called “Story Mode” since it tells a story of how the program executes over the course of a frame. This abstract code execution timeline can then be used to facilitate program comprehension, primarily for the purposes of modifying the code to improve execution speed.