Method and apparatus for saving and retrieving functional results
First Claim
1. For use in a digital data processing system of a type that repetitively evokes a set of Functions to process data, including one or more constants, a method comprising the steps of:
- examining a constant to determine identifying characteristics thereof;
combining the characteristics with the value of the constant;
encoding the combination to obtain a Constant signature;
storing the Constant signature with a representation of the value;
for each Function of the set of Functions having input for which Constant signatures have been encoded,examining a Function to determine identifying characteristics of an output of the Function;
combining the characteristics with an identification of the Function and with signatures of the inputs to the Function;
encoding the combination to obtain a first Function signature;
storing the first Function signature; and
, prior to executing a Function, performing the steps of,examining the Function to be executed to determine identifying characteristics of an output of the Function;
combining the characteristics with an identification of the Function to be executed and with signatures of the inputs to the Function to be executed;
encoding the combination to obtain a second Function signature;
determining if there exists a stored Function signature that equals the second Function signature; and
if so,accessing a memory means to retrieve a value associated with the stored Function signature, otherwiseexecuting the Function and storing the value returned by the Function with the signature of the Function.
1 Assignment
0 Petitions
Accused Products
Abstract
Method and apparatus for use in a digital data processing system that evaluates functional networks. A method operates to assign a unique signature to each input constant of the network, assign a unique signature to each output of a network Function, and to store each of the constants and function outputs along with their assigned signatures. The signatures operate as an access key to the associated stored constants and function outputs, thereby eliminating a requirement to reevaluate a Function if its outputs already exist. A storage element, or Dictionary (20), stores data units, such as input data, intermediate values, and/or pointers to same, each with a unique signature. The storage element, in concert with a Dictionary Controller (18), provides for the deletion of a stored data unit that is associated with a specified signature and the retrieval of a stored data unit that is associated with a specified signature. Preferably, the signatures are generated from a combination of constant and Function attributes and values and are each uniquely encoded by a CRC generator (14).
22 Citations
28 Claims
-
1. For use in a digital data processing system of a type that repetitively evokes a set of Functions to process data, including one or more constants, a method comprising the steps of:
-
examining a constant to determine identifying characteristics thereof; combining the characteristics with the value of the constant; encoding the combination to obtain a Constant signature; storing the Constant signature with a representation of the value; for each Function of the set of Functions having input for which Constant signatures have been encoded, examining a Function to determine identifying characteristics of an output of the Function; combining the characteristics with an identification of the Function and with signatures of the inputs to the Function; encoding the combination to obtain a first Function signature; storing the first Function signature; and
, prior to executing a Function, performing the steps of,examining the Function to be executed to determine identifying characteristics of an output of the Function; combining the characteristics with an identification of the Function to be executed and with signatures of the inputs to the Function to be executed; encoding the combination to obtain a second Function signature; determining if there exists a stored Function signature that equals the second Function signature; and
if so,accessing a memory means to retrieve a value associated with the stored Function signature, otherwise executing the Function and storing the value returned by the Function with the signature of the Function. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16)
-
-
17. Apparatus for use in a digital data processing system of a type that repetitively evokes a set of Functions to process data, including one or more constants, comprising:
-
means for examining a functional network comprised of a plurality of functional nodes each representing a network Function, at least one of said functional nodes having an input for receiving input data, at least one of said functional nodes having an output for outputting, to an input of another functional node, an intermediate result of an execution of the associated network Function, said examining means including means for examining one or more network constants to determine identifying characteristics thereof, said constant examining means including means for combining the characteristics with a value of a network constant to obtain a first combination, said examining means further including means for examining one or more network Functions to determine identifying characteristics of an output of each network Function, said Function examining means including means for combining the characteristics with an identification of a network Function and with signatures of the inputs to the network Function to obtain a second combination; means for encoding the first combination and the second combination to obtain a Constant signature and a Function signature, respectively; means for storing the Constant signature and the Function signature in association with a representation of a value of the network constant and with a representation of an output of the network Function, respectively; and means, responsive to a network Function being called for execution, for accessing the storing means with a Constant signature or with a Function signature to obtain the stored representation of the value of a corresponding network constant or the stored representation of the output of a corresponding network Function, respectively. - View Dependent Claims (18, 19, 20, 21, 22, 23, 24)
-
-
25. A method for use in a digital data processing system of a type that repetitively evokes a set of Functions to process data, including one or more constants, comprising the steps of:
-
operating the digital data processing system to examine a functional network comprised of a plurality of functional nodes each representing a network Function, at least one of said functional nodes having an input for receiving input data, at least one of said functional nodes having an output for outputting, to an input of another functional node, an intermediate result of an execution of the associated network Function, the step of operating the digital data processing system being comprised of the steps of, inputting at least one network constant; examining the at least one network constant to determine identifying characteristics thereof and combining the determined identifying characteristics with a value of the at least one network constant to obtain a first combination; inputting at least one network Function; examining the at least one network Function to determine identifying characteristics of an output of the at least one network Function and combining the determined identifying characteristics with an identification of the at least one network Function and with signatures of inputs to the network Function to obtain a second combination; inputting the first combination and the second combination to an encoder;
encoding with the encoder the first combination and the second combination to obtain at an output of the encoder a Constant signature and a Function signature, respectively; andstoring, within a memory means, a plurality of items that include the Constant signature and the Function signature that are output from the encoder, the Constant signature and the Function signature being stored in association with a representation of a value of the at least one network constant and with a representation of an output of the at least one network Function, respectively;
whereinthe first combination is obtained as a constant signature (Sc) in accordance with an expression having at least the elements of;
space="preserve" listing-type="equation">S.sub.c (type, category, rank, dimensions, data),and wherein the second combination is obtained as a Function signature (Sf) in accordance with an expression having at least the elements of;
space="preserve" listing-type="equation">S.sub.f (name, out, i.sub.1, i.sub.2, . . . , i.sub.n);where i1, i2, . . . , in are inputs to the at least one network Function. - View Dependent Claims (26, 27, 28)
-
Specification