IP Library Granted Patent US 7,191,329
Granted Patent B2
US 7,191,329 · App. 10/382,723 · Granted Mar 13, 2007

Automated resource management using perceptron prediction

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 7,191,329
App. No.
10/382,723
Granted
Mar 13, 2007
Kind
B2
Abstract

A system and method for automatically identifying a desirable reconfiguration of computer system resources, using a perceptron to determine whether one resource configuration will likely be more efficient or more effective than a second configuration. An iterative solver identifies possible configurations or reconfigurations of the resources. A possible configuration is applied to the perceptron, which determines whether the new configuration is more attractive than an existing or baseline configuration, in terms of a predetermined objective function (e.g., cost, performance, resource utilization, throughput). If the new configuration improves the objective function, the new configuration may be automatically or manually applied through a dynamic reconfiguration operation.

Claims (60)

1. A method of using a perceptron to facilitate dynamic reconfiguration of computer system resources that include a plurality of physical resources and one or more logical resources constructed upon the physical resources, the method comprising:

operating a graph module to assemble a resource dependency graph representing a first distribution of the computer system resources among one or more containers configured to comprise resources allocated to tasks, wherein said resource dependency graph comprises:

vertices representing the computer system resources; and

edges, wherein each edge represents a dependency between a first physical or logical resource and a second physical or logical resource; and

executing a partitioner configured to identify a second distribution of the computer system resources among the one or more containers that provides greater value than the first distribution as measured by an objective function for evaluating a configuration of the computer system resources, said partitioner comprising:

an iterative solver configured to identify one or more possible distributions of the computer system resources different than said first distribution; and

the perceptron, wherein the perceptron is configured to predict the impact of each of said possible distributions on the objective function; and

if the perceptron predicts that one or more of said possible distributions would improve the objective function, initiating a reconfiguration of the computer system resources to implement one of the one or more said possible distributions.

2. The method of claim 1 , further comprising:

receiving from the perceptron an indication of whether the objective function would be improved if a given possible distribution was applied.

3. The method of claim 1 , further comprising:

receiving from the perceptron an indication of the extent to which the objective function would be improved if a given possible distribution was applied.

4. The method of claim 1 , further comprising:

receiving from the perceptron an indication of whether the objective function would be maximized if a given possible distribution was applied.

5. The method of claim 1 , further comprising:

applying a given possible distribution if the perceptron predicts that said given possible distribution would improve the objective function.

6. The method of claim 1 , wherein the objective function is the cost of operating the set of resources.

7. The method of claim 1 , wherein the objective function is the performance of the set of resources.

8. The method of claim 1 , wherein the objective function is throughput.

9. The method of claim 1 , wherein the objective function is resource utilization.

10. The method of claim 1 , further comprising

training the perceptron by:

inputting to the perceptron a previous distribution of the set of resources;

receiving a corresponding output; and

adjusting weights of the perceptron based on a difference between the corresponding output and a measure of the objective function at the time of the previous distribution of the set of resources.

11. The method of claim 1 , further comprising: for each of the one or more possible distributions, determining whether said distribution would violate any constraints on the resources.

12. The method of claim 11 , wherein a constraint comprises a limitation or requirement upon a possible distribution of the computer system resources.

13. The method of claim 12 , wherein each said container is one of:

a domain of resources operating under one instance of an operating system; and a subset of resources operating under multiple instances of one or more operating systems, wherein the subset of resources cooperate to provide a service.

14. The method of claim 1 , further comprising: determining which of the one or more possible distributions is optimal.

15. The method of claim 1 , wherein the perceptron comprises a neural network including one or more artificial neurons comprising:

one or more data inputs;

for each data input, an associated weight; and

an output.

16. An apparatus for identifying a desirable reconfiguration of computer system resources, comprising:

one or more platforms comprising physical computer system resources, wherein one or more logical resources may be constructed upon each of the physical resources;

a graph module configured to facilitate the assembly of a resource dependency graph representing a first configuration of the physical resources and the logical resources, wherein the resource dependency graph comprises:

vertices representing each of the physical resources and each of the logical resources; and

edges, wherein each edge represents a dependency between a first physical or logical resource and a second physical or logical resource; and

a partitioner configured to identify a second configuration of the physical resources and the logical resources providing greater value than the first configuration as measured by an objective function, said partitioner comprising:

an iterative solver configured to identify a possible configuration of the physical resources and the logical resources different from the first configuration; and

a perceptron configured to evaluate said possible configuration in terms of the objective function.

17. The apparatus of claim 16 , wherein the objective function comprises one of:

a cost associated with the physical computer system resources; and

a performance of the physical computer system resources.

18. The apparatus of claim 16 , wherein the objective function comprises one of:

a utilization of physical computer system resources; and

a throughput of the physical computer system resources.

19. The apparatus of claim 16 , wherein said partitioner is further configured to determine whether said possible configuration violates any of a set of constraints placed upon the physical resources and the logical resources.

20. The apparatus of claim 16 , wherein said partitioner further comprises:

a controller configured to identify the first configuration of the physical resources and the logical resources to said iterative solver.

21. The apparatus of claim 20 , wherein said partitioner identifies the first configuration to said iterative solver by providing the resource dependency graph to said iterative solver.

22. A tangible computer readable storage medium storing instructions that, when executed by a computer, cause the computer to perform a method of using a perceptron to facilitate dynamic reconfiguration of computer system resources that include a plurality of physical resources and one or more logical resources constructed upon the physical resources, the method comprising:

operating a graph module to assemble a resource dependency graph representing a first distribution of the computer system resources among one or more containers configured to comprise resources allocated to tasks, wherein said resource dependency graph comprises:

vertices representing the computer system resources; and

edges, wherein each edge represents a dependency between a first physical or logical resource and a second physical or logical resource; and

executing a partitioner configured to identify a second distribution of the computer system resources among the one or more containers that provides greater value than the first distribution as measured by an objective function for evaluating a configuration of the computer system resources, said partitioner comprising:

an iterative solver configured to identify one or more possible distributions of the computer system resources different than said first distribution; and

the perceptron, wherein the perceptron is configured to predict the impact of each of said possible distributions on the objective function; and

if the perceptron predicts that one or more of said possible distributions would improve the objective function, initiating a reconfiguration of the computer system resources to implement one of the one or more said possible distributions.

Assignments (2)
MERGER AND CHANGE OF NAME Recorded Dec 16, 2015
From: ORACLE USA, INC.; SUN MICROSYSTEMS, INC.; ORACLE AMERICA, INC.
To: ORACLE AMERICA, INC.
Reel/Frame 037302/0719 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 5, 2003
From: MURPHY, RICHARD C.
To: SUN MICROSYSTEMS, INC.
Reel/Frame 013848/0408 →