System and method for CPU bandwidth allocation
First Claim
1. A management service for managing the use of one or more resources by one or more processes running on a computing device comprising:
- a data interface to a database for automatically obtaining a process resource usage policy and for automatically obtaining historical process resource usage information pertaining to past usage by the one or more processes of the one or more resources;
a system interface to a system performance facility for obtaining current process resource usage information pertaining to current usage by the one or more processes of the one or more resources; and
a control interface to a system control facility for automatically controlling future usage by the one or more processes of the one or more resources in accordance with the policy.
2 Assignments
0 Petitions
Accused Products
Abstract
An automatic resource management service implements a policy to automatically control resource usage by processes running on a computer. A policy expresses criteria for identifying process sets, and imposes allocations and sub-allocations or resource amounts to be used by given process sets and subsets. Exclusion lists are used in an embodiment of the invention to exclude processes from management by the management service. In an embodiment of the invention the resources whose use is managed are CPU resources, although in further embodiments the managed resources include memory resources as well.
43 Citations
20 Claims
-
1. A management service for managing the use of one or more resources by one or more processes running on a computing device comprising:
-
a data interface to a database for automatically obtaining a process resource usage policy and for automatically obtaining historical process resource usage information pertaining to past usage by the one or more processes of the one or more resources;
a system interface to a system performance facility for obtaining current process resource usage information pertaining to current usage by the one or more processes of the one or more resources; and
a control interface to a system control facility for automatically controlling future usage by the one or more processes of the one or more resources in accordance with the policy. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12)
-
-
13. A method of creating a resource policy defining one or more resource usage limitations for one or more processes respectively, the method comprising:
-
receiving a user-defined resource policy, wherein the user-defined resource policy comprises one or more criteria sets defining criteria for process membership in one or more respective process sets, and one or more allocations defining a desired resource usage for at least one of the one or more process sets; and
supplementing the user-defined resource policy by automatically identifying a default process set for which no allocation is defined in the user-defined resource policy and allocating to the default process set those resources not allocated to any other process set by the user-defined resource policy. - View Dependent Claims (14, 15)
-
-
16. A method of automatically managing resource usage for a plurality of processes running on a computing device, each process being associated with a respective system priority that that defines the process'"'"'s priority of access to resources, the method comprising:
-
retrieving a resource usage policy defining a plurality of desired resource allocations for a respective plurality of process sets;
determining the current resource usage of processes in a particular process set;
determining the past resource usage of processes in the particular process set;
if the current resource usage is less than the resource allocation for the particular process set, and if the past resource usage for a predetermined past period is consistently less than the resource allocation for the particular process set, raising the priorities associated with all processes of the particular process set by a first increment;
if the current resource usage is less than the resource allocation for the particular process set, and if the past resource usage for a predetermined past period is not consistently less than the resource allocation for the particular process set, raising the priorities associated with all processes of the particular process set by a second increment, wherein the second increment is less than the first increment; and
automatically lowering the desired resource allocation for the particular process set by a decrement amount and raising the resource allocation for at least one other process set by the decrement amount. - View Dependent Claims (17, 18, 19, 20)
-
Specification