Virtual resource management tool for cloud computing service
First Claim
Patent Images
1. A method for allocating software resources, the method comprising:
- receiving, by a server system including one or more processors, from a computer network accessible by a plurality of different users, a task representing a simulation of a physical system, the task including a plurality of processes, each respective process requiring a respective type of software package of a plurality of software packages for executing the respective process of the plurality of processes, wherein the server system is configured with a plurality of virtual servers for executing the plurality of processes of the task,analyzing the received task to determine which of the plurality of software packages are required to perform each of the respective processes of the task on one or more of the virtual servers,sending a request to a software resource server that accesses a software allocation data structure for determining an availability of respective ones of the software packages; and
based on determining that a first process and a second process of the plurality of software processes require a same type of a first software package, and further based on determining, from the software resource server, that only one instance of the first software package is available, consolidating the first process and the second process as a consolidated process;
allocating the respective processes and the respective software packages, including the consolidated process and the first software package, to one or more of the virtual servers that execute the plurality of processes to execute the task and perform the simulation of the physical system,wherein the software resource server is configured to access the software allocation data structure to determine availability of respective ones of the software packages, the software allocation data structure containing data representative of a number and identity of the software packages available to the server system; and
updating the software allocation data structure upon completion of each process of the task to indicate that the respective software package is available.
2 Assignments
0 Petitions
Accused Products
Abstract
A system and method for allocating software resources. Multiple tasks are received from a network in which each task requires at least one software resource. Each task is analyzed to determine the type of resource(s) required to execute each such task. The availability of the software resource(s) is determined and, if available, allocated to the requesting task. If the software resource(s) is not available, the task is stored in a queue until the software resource(s) becomes available.
6 Citations
6 Claims
-
1. A method for allocating software resources, the method comprising:
-
receiving, by a server system including one or more processors, from a computer network accessible by a plurality of different users, a task representing a simulation of a physical system, the task including a plurality of processes, each respective process requiring a respective type of software package of a plurality of software packages for executing the respective process of the plurality of processes, wherein the server system is configured with a plurality of virtual servers for executing the plurality of processes of the task, analyzing the received task to determine which of the plurality of software packages are required to perform each of the respective processes of the task on one or more of the virtual servers, sending a request to a software resource server that accesses a software allocation data structure for determining an availability of respective ones of the software packages; and based on determining that a first process and a second process of the plurality of software processes require a same type of a first software package, and further based on determining, from the software resource server, that only one instance of the first software package is available, consolidating the first process and the second process as a consolidated process; allocating the respective processes and the respective software packages, including the consolidated process and the first software package, to one or more of the virtual servers that execute the plurality of processes to execute the task and perform the simulation of the physical system, wherein the software resource server is configured to access the software allocation data structure to determine availability of respective ones of the software packages, the software allocation data structure containing data representative of a number and identity of the software packages available to the server system; and updating the software allocation data structure upon completion of each process of the task to indicate that the respective software package is available. - View Dependent Claims (2, 3)
-
-
4. A system for allocating software resources, the system comprising:
-
one or more processors; and a memory storing instructions which, when executed by the one or more processors of the system, configure the one or more processors to; receive, from a computer network accessible by a plurality of computers, a task representing a simulation of a physical system, the task including a plurality of processes, each respective process requiring a respective type of software package of a plurality of software packages for executing the respective process of the plurality of processes, wherein the system is configured with a plurality of virtual servers for executing the plurality of processes of the task, analyze the received task to determine the types of the software packages required to execute each of the respective processes; determine an availability of respective ones of the software packages based on data in a software allocation data structure; based on determining that a first process and a second process of the plurality of software processes require a same first software package, and further based on determining, from the software allocation data structure, that only one instance of the first software package is available, consolidate the first process and the second process as a consolidated process; and allocate the respective processes and the respective software packages, including the consolidated process and the first software package, to one or more of the virtual servers that execute the plurality of processes for executing the task and performing the simulation of the physical system, wherein the one or more processors are configured to access the software allocation data structure to determine availability of respective ones of the software packages, the software allocation data structure containing data representative of a number and the type of the software packages available to the server system; and update the software allocation data structure upon completion of each process of the task to indicate that the respective software package is available. - View Dependent Claims (5, 6)
-
Specification