Method and apparatus for allocating resources to applications using a linearized objective function
First Claim
1. A method for allocating resources to a plurality of applications, comprising:
- determining, by a computer, available resources of a networked computing system, wherein the available resources comprise processing resources, networking resources, and storage resources;
determining, by the computer, for each application, required resources of the application, wherein the required resources of each application specify a type of servers on which the application can be hosted, the type of servers being based on attributes of the servers including attributes relating to processor architecture and processing power, wherein the servers are part of the processing resources;
determining, by the computer, an assigned subset of the available resources for each application as a function of the required resources of the application and the available resources, wherein determining the assigned subset of available resources for each application is based on a linearized objective function that reduces communication delays between resources of the subset of the available resources in conformance with bandwidth capacity requirements of the application and in conformance with network bandwidth limitations, wherein the linearized objective function includes a linear combination of variables; and
associating the applications with the assigned subsets of resources.
2 Assignments
0 Petitions
Accused Products
Abstract
A method, system, and apparatus is disclosed for allocating resources to applications. Available resources of a networked computing system may be determined. For each application, required resources of the application may be determined. An assigned subset of the available resources for each application is determined as a function of the required resources of the application and the available resources. The function reduces communication delays between resources of the subset of the available resources in conformance with bandwidth capacity requirements of the application and in conformance with network bandwidth limitations. The applications may then be associated with the assigned subsets of resources.
-
Citations
27 Claims
-
1. A method for allocating resources to a plurality of applications, comprising:
-
determining, by a computer, available resources of a networked computing system, wherein the available resources comprise processing resources, networking resources, and storage resources; determining, by the computer, for each application, required resources of the application, wherein the required resources of each application specify a type of servers on which the application can be hosted, the type of servers being based on attributes of the servers including attributes relating to processor architecture and processing power, wherein the servers are part of the processing resources; determining, by the computer, an assigned subset of the available resources for each application as a function of the required resources of the application and the available resources, wherein determining the assigned subset of available resources for each application is based on a linearized objective function that reduces communication delays between resources of the subset of the available resources in conformance with bandwidth capacity requirements of the application and in conformance with network bandwidth limitations, wherein the linearized objective function includes a linear combination of variables; and associating the applications with the assigned subsets of resources. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11)
-
-
12. A system comprising:
a computer having a processor and configured to; determine available resources of a networked computing system, wherein the available resources comprise servers, networking resources, and storage resources; determine required resources for each application of a plurality of applications, wherein the required resources for each application specify a type of the servers on which the application can be hosted, the type of servers being based on attributes relating to processing architecture and processing power; determine an assigned subset of the available resources for each application as a function of the required resources of the application and the available resources, wherein determining the assigned subset of available resources for each application is based on a linearized objective function that reduces communication delays between resources of the subset of the available resources in conformance with bandwidth capacity requirements of the application and in conformance with network bandwidth limitations, wherein the linearized objective function includes a linear combination of variables; and associate the applications with the assigned subsets of resources.
-
13. A system, comprising:
-
a plurality of network-coupled processing resources; a plurality of storage resources network-coupled to the processing resources, wherein the processing and storage resources are allocated to a plurality of applications; a computing arrangement configured to; determine, for each application of the plurality of applications, required resources of the application, wherein the required resources of each application specify a type of servers on which the application can be hosted, the type of servers being based on attributes of the servers including attributes relating to processor architecture and processing power, wherein the servers are part of the processing resources; determine an assigned subset of the processing and storage resources for each application as a function of the required resources of the application and the processing and storage resources, wherein determining the assigned subset of processing and storage resources for each application is based on a linearized objective function that reduces communication delays between resources of the subset of the processing and storage resources in conformance with bandwidth capacity requirements of the application and in conformance with network bandwidth limitations, wherein the linearized objective function includes a linear combination of variables; and associate the applications with the assigned subsets of processing and storage resources. - View Dependent Claims (14, 15, 16)
-
-
17. A non-transitory computer-readable medium configured with instructions for causing a processor of a computer to allocate resources to a plurality of applications, comprising:
-
determining available resources of a networked computing system, wherein the available resources comprise processing resources, networking resources, and storage resources; determining, for each application, required resources of the application; determining an assigned subset of the available resources for each application as a function of the required resources of the application and the available resources, wherein determining the assigned subset of available resources for each application is based on a linearized objective function that reduces communication delays between resources of the subset of the available resources in conformance with bandwidth capacity requirements of the application and in conformance with network bandwidth limitations, wherein the linearized objective function includes a linear combination of variables; and associating the applications with the assigned subsets of resources, wherein the required resources of each application is specified in resource requirements that include attributes of the processing resources, wherein the attributes specify processor type and processor speed. - View Dependent Claims (18, 19, 20, 21, 22, 23, 24, 25, 26, 27)
-
Specification