System and Method for Reproducing Device Program Execution
First Claim
1. A method for Data Center Replay (DCR), comprising:
- running a program;
capturing data from a non-deterministic date source;
substituting the captured data into subsequent re-executions of the program;
re-running the program with the captured data; and
analyzing the re-running of the program.
1 Assignment
0 Petitions
Accused Products
Abstract
Provided are a system and method for precisely reproducing a device program execution, such as reproducing a software program executed on a computer for example. The method provides a solution to a class of diagnosis methods known as “record/replay” or “deterministic replay”, where information related to a program execution is recorded for later replay, often for diagnostic purposes to reproduce errors in device function such as software bugs and other anomalous behavior. In contrast with other methods in this class, the invention provides a method for low-overhead recording and high-precision replay of programs possibly utilizing multiple processor cores, and also low-overhead recording and high-precision replay of programs that perform input and/or output operations at high data rates, and further provides a system and method provide a solution with substantially few hardware requirements beyond that of a modern electronic device, such as a personal computer, or a laptop computer, or other electronic device controlled by one or more processors. Taken together, these features enable efficient and cost-effective execution replay of modern multiprocessor and networked software.
-
Citations
22 Claims
-
1. A method for Data Center Replay (DCR), comprising:
-
running a program; capturing data from a non-deterministic date source; substituting the captured data into subsequent re-executions of the program; re-running the program with the captured data; and analyzing the re-running of the program. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A method for reproducing electronic program execution, comprising:
-
running a program; collecting output data while the program is running; performing an output deterministic execution; searching a predetermined space of potential executions of the program; and calculating inferences from the collected output data to find operational errors in the program. - View Dependent Claims (9, 10)
-
-
11. A system for reproducing electronic program execution, comprising:
-
a run module configured to run a program; a collection module configured to collect data clues during the running of the program; and an execution program configured to run the program in an output deterministic execution to determine operational errors in the program based on the data clues collected when the program is run in the run module. - View Dependent Claims (12, 13)
-
-
14. A method for Data Center Replay (DCR), comprising:
-
running a collection of programs; observing the behaviors of the programs while they are running; and analyzing programs'"'"' executions that exhibit the observed behaviors - View Dependent Claims (15, 16, 17)
-
-
18. A method for reproducing electronic multi-program execution, comprising:
-
running a collection of programs; observing behaviors of the programs while they are running; reconstructing programs'"'"' executions that exhibit the original executions'"'"' outputs; and analyzing the reconstructed executions. - View Dependent Claims (19, 20, 21, 22)
-
Specification