Memoization from offline analysis
First Claim
1. A method performed by a computer processor, said method comprising:
- receiving monitored parameters collected from executing a target executable code, said target executable code comprising a plurality of functions having input parameters and returning results;
analyzing said monitored parameters to identify a first function for memoization;
creating a configuration record comprising;
an identifier for said first function; and
a memoization indicator indicating that said first function is to be memoized during execution;
transmitting said configuration record to a target processor executing said target executable code.
2 Assignments
0 Petitions
Accused Products
Abstract
Memoization may be deployed using a configuration file or database that identifies functions to memorize, and in some cases, includes input and result values for those functions. The configuration file or database may be created by profiling target code and offline or otherwise separate analysis of the profiling results. The configuration file may be used by an execution environment to identify which functions to memorize during execution. The offline or separate analysis of the profiling results may enable more sophisticated analysis than could otherwise be performed in parallel with executing the target code, including historical analysis of multiple instances of the target code and sophisticated cost/benefit analysis.
89 Citations
47 Claims
-
1. A method performed by a computer processor, said method comprising:
-
receiving monitored parameters collected from executing a target executable code, said target executable code comprising a plurality of functions having input parameters and returning results; analyzing said monitored parameters to identify a first function for memoization; creating a configuration record comprising; an identifier for said first function; and a memoization indicator indicating that said first function is to be memoized during execution; transmitting said configuration record to a target processor executing said target executable code. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 40, 41, 42, 43, 44)
-
-
15. A system comprising:
-
a computer processor; an analyzer operating on said computer processor, said analyzer that; receives monitored parameters collected from executing a target executable code, said target executable code comprising a plurality of functions having input parameters and returning results; analyzes said monitored parameters to identify a first function for memoization; creates a configuration record comprising; an identifier for said first function; and a memoization indicator indicating that said first function is to be memoized during execution; a distribution mechanism that transmits said configuration record to a first processor that executes said target executable code with said configuration record. - View Dependent Claims (16, 17, 18, 19, 20, 36, 37, 38, 39, 45, 46, 47)
-
Specification