Systems and methods for executing actions using cached data
First Claim
1. A system operative to execute efficiently a plurality of actions, comprising:
- a first compute element;
a cache memory belonging to the first compute element; and
a first data set associated with a first data source;
wherein the system is configured to;
fetch the first data set from the first data source to the cache memory;
execute, in the first compute element, as directed by a first application program running on the first compute element, and in conjunction with the first data set now in the cache memory, a first action involving said first data set;
identify, within a second application program, a second action that, like the first action, involves the first data set; and
instruct the first compute element, after said execution of the first action and while the first data set is still in the first memory, to;
at least temporarily halt execution of the first application program, while leaving the first data set in the cache memory; and
temporarily execute the second application program, at least until the second action is performed by the second application program in conjunction with the first data set still in the cache memory,thereby avoiding a need to re-fetch the first data set.
3 Assignments
0 Petitions
Accused Products
Abstract
Described herein are systems and methods to execute efficiently a plurality of actions, in which multiple actions require the use of a single data set. The data set is fetched from a data source, across a switching network, to a memory associated with a first compute element. This is the only fetching of the data set from the data source, and the only fetching across a switching network, thereby minimizing fetching across the switching network, reducing the load on the switching network, decreasing the time by which the data set will be accessed in second and subsequent processes, and enhancing the efficiency of the system. In some embodiments, processes are migrated from second and subsequent compute elements to the compute element in which the data set is stored. In some embodiments, second and subsequent compute elements access the data set stored in the memory associated with the first compute element.
87 Citations
18 Claims
-
1. A system operative to execute efficiently a plurality of actions, comprising:
-
a first compute element; a cache memory belonging to the first compute element; and a first data set associated with a first data source; wherein the system is configured to; fetch the first data set from the first data source to the cache memory; execute, in the first compute element, as directed by a first application program running on the first compute element, and in conjunction with the first data set now in the cache memory, a first action involving said first data set; identify, within a second application program, a second action that, like the first action, involves the first data set; and instruct the first compute element, after said execution of the first action and while the first data set is still in the first memory, to; at least temporarily halt execution of the first application program, while leaving the first data set in the cache memory; and temporarily execute the second application program, at least until the second action is performed by the second application program in conjunction with the first data set still in the cache memory, thereby avoiding a need to re-fetch the first data set. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15)
-
-
16. A system operative to execute efficiently a plurality of actions, comprising:
-
a first compute element associated with a first memory; and a first data set associated with a first data source; wherein the system is configured to; fetch the first data set from the first data source to the first memory; execute, in the first compute element, and in conjunction with the first data set now in the first memory, a first action that is a part of a first algorithm comprising a first part and said first action and involving said first data set; identify a second action that is a part of a second algorithm comprising the first part and said second action and that, like the first action, involves the first data set; and cause the second action to be executed in the first compute element, and in conjunction with the first data set already in the first memory, while the first data set is still in the first memory, thereby avoiding a need to re-fetch the first data set; in which; the system is further configured to execute the first part prior to said execution of the first action, thereby facilitating execution of the first algorithm and the second algorithm up to a point where the first part ends; the execution of the first action follows said execution of the first part, such that the execution of the first action is a continuation of said execution of the first algorithm; and said causing of the second action to be executed in the first compute element is facilitated by the system instructing the first compute element, after said execution of the first action, to switch to executing the second action. - View Dependent Claims (17, 18)
-
Specification