Method for dynamic optimization of multiplexed resource partitions
First Claim
Patent Images
1. A method for dynamically allocating system resources, comprising the operations of:
- identifying an objective associated with a corresponding partition of a resource being configured according to a first configuration;
implementing the objective as a series of independent mathematical functions, such that each mathematical function contributes to a value associated with the objective;
detecting a violation of the objective due to a changing workload, wherein the method operation of detecting a violation of the objective due to a changing workload includes triggering a reconfiguration examination;
generating alternative configurations base upon constraints;
evaluating the alternative configurations to meet the objective under the changing workload;
eliminating alternative configurations from consideration based on a decision history, the decision history tracking alternative configurations which have failed to meet the objective under the changing workload;
ranking the alternative configurations;
selecting a highest ranked one of the alternative configurations; and
substituting the first configuration with the highest ranked one of the alternative configurations.
2 Assignments
0 Petitions
Accused Products
Abstract
A method for dynamically allocating system resources is provided. The method initiates with identifying a goal associated with a corresponding partition of a resource being configured according to a first configuration. The method includes establishing a mathematical function yielding a value associated with the goal. Once a violation of the goal is detected due to a changing workload, alternative configurations are evaluated to meet the goal under the changing workload. Then, a highest ranked one of the alternative configurations is selected and substituted for the first configuration.
47 Citations
25 Claims
-
1. A method for dynamically allocating system resources, comprising the operations of:
-
identifying an objective associated with a corresponding partition of a resource being configured according to a first configuration; implementing the objective as a series of independent mathematical functions, such that each mathematical function contributes to a value associated with the objective; detecting a violation of the objective due to a changing workload, wherein the method operation of detecting a violation of the objective due to a changing workload includes triggering a reconfiguration examination; generating alternative configurations base upon constraints; evaluating the alternative configurations to meet the objective under the changing workload; eliminating alternative configurations from consideration based on a decision history, the decision history tracking alternative configurations which have failed to meet the objective under the changing workload; ranking the alternative configurations; selecting a highest ranked one of the alternative configurations; and substituting the first configuration with the highest ranked one of the alternative configurations. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. A computer storage medium having program instructions for dynamically allocating system resources, comprising:
-
program instructions for identifying an objective associated with a corresponding partition of a resource being configured according to a first configuration; program instructions for identifying a constraint associated with each objective; program instructions for detecting a violation of the objective due to a changing workload, wherein the program instructions for detecting a violation of the objective due to a changing workload includes program instructions for triggering a reconfiguration examination; program instructions for evaluating alternative configurations to meet the objective under the changing workload; program instructions for eliminating a number of alternative configurations from consideration based on the constraint associated with the objective and a decision history which stores alternative configurations that historically failed to meet the objective; program instructions for ranking the alternative configurations; program instructions for selecting a highest ranked one of the alternative configurations; and program instructions for substituting the first configuration with the highest ranked one of the alternative configurations. - View Dependent Claims (11, 12, 13, 14, 15, 16)
-
-
17. A computing device capable of dynamically allocating resources between concurrently executing workloads, comprising:
-
a resource having a plurality of partitions, the resource associated with a first configuration of the plurality of partitions for executing the workloads; a dynamic resource allocation module configured to enable selection of objectives associated with each of the plurality of partitions, the dynamic resource allocation module further including, a configuration monitoring module for collecting and analyzing data associated with the workloads; a statistical process control module configured to smooth the data collected by the configuration monitoring, by calculating zones of control around the selected objectives, the smoothed data being analyzed to determine if one of the objectives is unsatisfied through the configuration monitoring module, the zones of control are a multiple of a standard deviation of a mean value of the selected objectives and the zones of control setting a threshold level which trigger changing the first configuration; and
;a configuration change module for changing the first configuration to a second configuration by rearranging the plurality of partitions in response to determining that the one of the objectives is unsatisfied, such that the second configuration is selected from a number of configurations not eliminated by a decision history which stores alternative configurations that historically failed to meet the objective; wherein the dynamic resource allocation module is configured to store previously non-effective configurations for a time interval and is further configured to verify that the second configuration is different than any previously non-effective configurations prior to changing the first configuration. - View Dependent Claims (18, 19, 20, 21)
-
-
22. A distributed computing resource system capable of dynamically allocating resources, comprising:
a server in communication with at least one consumer over a distributed network, the server including, a resource having a plurality of partitions, the resource associated with a first configuration of the plurality of partitions for executing a workload associated with the at least one consumer; a dynamic resource allocation module configured to enable selection of objectives associated with each of the plurality of partitions, the dynamic resource allocation module further including, logic for tracking data associated with the workload; logic for filtering the tracked data, the filtered data being analyzed to determine if one of the objectives is unsatisfied; and logic for changing the first configuration to a second configuration by rearranging the plurality of partitions in response to determining that the one of the objectives is unsatisfied, wherein the second configuration is based on a decision history, the decision history eliminating alternative configurations which have historically failed to meet the objective under the changing workload, wherein the dynamic resource allocation module is configured to store previously non-effective configurations for a time interval, and is further configured to verify that the second configuration is different than any previously non-effective configurations prior to changing the first configuration. - View Dependent Claims (23, 24, 25)
Specification