Method and apparatus to use DRAM as a cache for slow byte-addressible memory for efficient cloud applications
US-12174739-B2 · Dec 24, 2024 · US
US9826031B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-9826031-B2 |
| Application number | US-201514885776-A |
| Country | US |
| Kind code | B2 |
| Filing date | Oct 16, 2015 |
| Priority date | Dec 12, 2008 |
| Publication date | Nov 21, 2017 |
| Grant date | Nov 21, 2017 |
A practical reading order for non-experts. Skip the full description unless you need deep technical detail.
What the patent document calls the invention.
A short plain-language summary of the technical disclosure.
Who owns or filed the patent and who is credited as inventor.
Filing, priority, publication, and grant dates set the timeline.
The legal scope of protection — read this for what is actually claimed.
Technology tags used to group this patent with similar filings.
Prior art links and similar publications in this corpus.
Official abstract text for this publication.
Techniques are described for managing distributed execution of programs. In some situations, the techniques include determining configuration information to be used for executing a particular program in a distributed manner on multiple computing nodes and/or include providing information and associated controls to a user regarding ongoing distributed execution of one or more programs to enable the user to modify the ongoing distributed execution in various manners. Determined configuration information may include, for example, configuration parameters such as a quantity of computing nodes and/or other measures of computing resources to be used for the executing, and may be determined in various manners, including by interactively gathering values for at least some types of configuration information from an associated user (e.g., via a GUI that is displayed to the user) and/or by automatically determining values for at least some types of configuration information (e.g., for use as recommendations to a user).
Opening claim text (preview).
What is claimed is: 1. A computer-implemented method comprising: receiving, by one or more computing systems configured to provide a program execution service, configuration information from a client that indicates a program to be executed in a distributed manner, that indicates a quantity of computing nodes provided by the program execution service to be used for execution of the program, and that indicates one or more of a group that includes a specified type of computing node to use for execution of the program and a specified geographical location of computing nodes to use for execution of the program; selecting, by the one or more configured computing systems of the program execution service, multiple computing nodes of the indicated quantity from a plurality of computing nodes provided by the program execution service, and provisioning the multiple computing nodes for use in the execution of the program; and initiating, by the one or more configured computing systems of the program execution service, the execution of the program for the client on the multiple computing nodes. 2. The computer-implemented method of claim 1 wherein the plurality of computing nodes provided by the program execution service include multiple types of computing nodes having differing computing resources, wherein the configuration information indicates the specified type of computing node from the multiple types, and wherein the selecting of the multiple computing nodes includes selecting computing nodes from the plurality of computing nodes that are of the specified computing node type. 3. The computer-implemented method of claim 1 wherein the plurality of computing nodes provided by the program execution service include computing nodes in multiple geographical locations, wherein the configuration information indicates the specified geographical location of computing nodes to use for execution of the program, wherein the specified geographical location is one of the multiple geographical locations, and wherein the selecting of the multiple computing nodes includes selecting computing nodes from the plurality of computing nodes that are in the specified geographical location. 4. The computer-implemented method of claim 1 wherein the plurality of computing nodes provided by the program execution service include computing nodes in multiple geographical locations, wherein the configuration information indicates the specified geographical location by specifying information about relative locations of the multiple computing nodes to each other, and wherein the selecting of the multiple computing nodes includes selecting computing nodes from the plurality of computing nodes that satisfy the specified relative locations. 5. The computer-implemented method of claim 1 wherein the receiving of the configuration information further includes receiving information about relative locations of the multiple computing nodes to a specified target, and wherein the selecting of the multiple computing nodes includes selecting computing nodes from the plurality of computing nodes that satisfy the specified relative locations. 6. The computer-implemented method of claim 1 wherein the receiving of the configuration information further includes receiving specified input data from the client for use by the program during the execution, wherein the provisioning of the multiple computing nodes includes providing access of the multiple computing nodes to the specified input data, and wherein the initiating of the execution of the program includes executing the program on the multiple computing nodes and providing the specified input data to the executing program. 7. The computer-implemented method of claim 1 wherein the receiving of the configuration information further includes receiving information about multiple execution jobs to perform during the execution of the program, and wherein the initiating of the execution of the program includes performing the multiple execution jobs on the multiple computing nodes as part of the execution. 8. The computer-implemented method of claim 1 wherein the plurality of computing nodes provided by the program execution service include multiple types of computing nodes having differing computing resources and include computing nodes in multiple geographical locations, wherein the configuration information indicates one or more specified computing node types from the multiple types, indicates one or more specified geographical locations from the multiple geographical locations, and includes information about relative locations of the multiple computing nodes to one or more indicated targets, and wherein the selecting of the multiple computing nodes includes selecting computing nodes from the plurality of computing nodes that are of the one or more specified computing node types and that are in the one or more specified geographical locations and that satisfy the specified relative locations. 9. The computer-implemented method of claim 1 further comprising providing, by the one or more configured computing systems of the program execution service, a graphical user interface of the program execution service to a computing device of the client, and wherein at least some of the configuration information from the client is received via one or more interactions of the client with the provided graphical user interface. 10. The computer-implemented method of claim 9 further comprising: determining, by the one or more configured computing systems of the program execution service, multiple recommended execution configuration parameters to use for executing the program; and presenting, by the one or more configured computing systems of the program execution service and via the provided user interface, information to the client about the recommended execution configuration parameters for executing the program; and wherein the receiving of the configuration information from the client includes receiving information from one or more interactions of the client with the user interface to use at least one of the recommended execution configuration parameters, and wherein the initiating of the execution of the program includes executing the program on the multiple computing nodes and using the at least one recommended execution configuration parameter as part of the executing. 11. The computer-implemented method of claim 10 wherein the recommended execution configuration parameters include a recommended quantity of computing nodes, wherein the at least one recommended execution configuration parameter includes the recommended quantity of computing nodes, and wherein the method further comprises, before the presenting of the information to the client about the recommended execution configuration parameters, monitoring, by the one or more configured computing systems, prior execution of other programs by the program execution service, and generating, by the one or more configured computing systems, the multiple recommended execution configuration parameters from the monitoring. 12. The computer-implemented method of claim 1 wherein the selecting of the multiple computing nodes includes selecting one or more physical computing systems provided by the program execution service that each hosts multiple virtual machines, and wherein the provisioning of the multiple computing nodes includes storing information on each of the selected one or more physical computing systems to configure the selected one or more physical computing systems to manage one or more hosted virtual machines on each of the selected one or more physical computing systems as part of the multiple computing nodes. 13. A non-transi
Task life-cycle, e.g. stopping, restarting, resuming execution (G06F9/4881 takes precedence) · CPC title
Electricity · mapped topic
Electricity · mapped topic
based on parameters of servers, e.g. available memory or workload (monitoring of computer activity G06F11/30) · CPC title
Discovery or management thereof, e.g. service location protocol [SLP] or web services · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.