Method and system for scheduling the use of a computer system resource using a resource planner and a resource provider
First Claim
1. A method in a computer system for managing the use of a resource of the computer system by a plurality of consumer entities, wherein each consumer entity may request the commitment of a share of the resource, and wherein the method utilizes representations of resource usage policy, present commitments of shares of the resource, and present commitments of specified amounts of the resource over specified periods of time, the method including the steps of:
- (a) receiving a request from a requesting consumer entity for a commitment of a specified share of the resource;
(b) in response to step (a), based on the specified share of the resource, the representations of resource usage policy, and present commitments of shares of the resource, determining whether the specified share of the resource should be committed to the requesting consumer entity;
(c) if it is determined in step (b) that the specified share of the resource should be committed to the requesting consumer entity, modifying the representation of present commitments of shares of the resource to commit the specified share of the resource to the requesting consumer entity; and
(d) scheduling the use of the resource by the plurality of consumer entities in accordance with the modified representation of present commitments of shares of the resource.
2 Assignments
0 Petitions
Accused Products
Abstract
A method and system for scheduling the use of a computer system resource using a resource planner and a resource provider is provided. In a preferred embodiment, a resource is scheduled for use by a plurality of consumer entities. Each consumer entity may request the commitment of a share of the resource. The method and system utilizes representations of resource usage policy, present commitments of shares of the resource, and present commitments of specified amounts of the resource over specified period of time. The method and system first receives a request from a consumer entity for the commitment of a specified share of the resource. In response, the method and system determines whether the specified share of the resource should be committed to the requesting consumer entity. This determination is based on the representations of resource usage policy and present commitments of shares of the resource. If it is determined that the specified share of the resource should be committed to the requesting consumer entity, then the method and system modifies the representation of present commitments of shares of the resource to commit the specified share of the resource to the requesting consumer entity. The method and system then schedules the use of the resource by the plurality of consumer entity based on the modified representation of present commitments of shares of the resource.
-
Citations
44 Claims
-
1. A method in a computer system for managing the use of a resource of the computer system by a plurality of consumer entities, wherein each consumer entity may request the commitment of a share of the resource, and wherein the method utilizes representations of resource usage policy, present commitments of shares of the resource, and present commitments of specified amounts of the resource over specified periods of time, the method including the steps of:
-
(a) receiving a request from a requesting consumer entity for a commitment of a specified share of the resource; (b) in response to step (a), based on the specified share of the resource, the representations of resource usage policy, and present commitments of shares of the resource, determining whether the specified share of the resource should be committed to the requesting consumer entity; (c) if it is determined in step (b) that the specified share of the resource should be committed to the requesting consumer entity, modifying the representation of present commitments of shares of the resource to commit the specified share of the resource to the requesting consumer entity; and (d) scheduling the use of the resource by the plurality of consumer entities in accordance with the modified representation of present commitments of shares of the resource. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11)
-
-
12. A method in a computer system for managing, the use of a resource of the computer system by a plurality of consumer entities, wherein each consumer entity may request the commitment of a specified amount of the resource over a specified period of time, and wherein the method utilizes representations of present commitments of shares of the resource and present commitments of specified amounts of the resource over specified periods of time, the method including the steps of:
-
(a) receiving a request from the requesting consumer entity for a commitment of a specified amount of the resource over a specified period of time; (b) in response to step (a), modifying the representation of present commitments of specified amounts of the resource over specified periods of time to commit the specified amount of the resource to the requesting consumer entity over the specified period of time; and (c) scheduling the use of the resource by the plurality of consumer entities in accordance with the representation of present commitments of shares of the resource and on the modified representation of present commitments of specified amounts of the resource over specified periods of time. - View Dependent Claims (13, 14, 15, 16, 17, 18)
-
-
19. An apparatus for managing the use of a resource of a computer system by a plurality of consumer entities, comprising:
-
a resource planner module for processing requests for reservations for shares of the resource each received from one of the plurality of consumer entities, comprising; a policy module for determining, for each received reservation request, whether approving the reservation request would be consistent with resource usage policies encoded in the policy module, a capacity module for determining, for each received reservation request, whether the resource has sufficient unreserved capacity to approve the reservation request, and a request discriminator that, for each received reservation request, based on the determinations made by the policy module and capacity module for the reservation request, approves or denies the reservation request, and, for approved reservation requests, forwards an indication of the approved reservation request to a resource provider module; and the resource provider module for granting use of the resource to up to a maximum number of consumer entities at one time based upon the reservations managed by the resource planner module, comprising; a reservation receiver for receiving the indications of approved reservation requests forwarded by the resource planner module, and a scheduler module for scheduling the use of the resource by consumer entities among the plurality of consumer entities in a manner that comports with approved reservation requests identified by the indications received by the reservation receiver. - View Dependent Claims (20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33)
-
-
34. In a computer system having resources including a processor contained in the computer system, a resource planner for granting reservations of the resources to activities, and a scheduler for scheduling threads to execute on the computer system, a method comprising the computer-implemented steps of:
-
providing a program for execution on the computer system wherein the program uses at least some of the resources, the program including a plurality of threads and the program performing one or more activities that require use of at least a portion of the resources; for at least a selected one of the activities performed by the program, requesting a reservation from the resource planner for amounts of resources that are used by the selected activity; with the resource planner, granting the program a reservation for the amounts of the resources that are used by the selected activity including the processor; specifying scheduling constraints for the execution of one or more threads in the selected activity, said scheduling constraints indicating the relative immediate urgency of scheduling the execution of each thread; and with the scheduler, scheduling execution of the threads of the selected activity using both the reservation for the processor resource granted by the resource planner and the scheduling constraints specified for the threads in the selected activity. - View Dependent Claims (35, 36, 37, 38, 39, 40, 41, 42)
-
-
43. A computer-readable medium whose contents cause a computer system to manage the use of a resource of the computer system by a plurality of consumer entities, wherein each consumer entity may request the commitment of a share of the resource and wherein the method utilizes representations of resource usage policy, present commitments of shares of the resource, and present commitments of specified amounts of the resource over specified periods of time by performing the steps of:
-
(a) receiving a request from a requesting consumer entity for a commitment of a specified share of the resource; (b) in response to step (a), based on the specified share of the resource representations of resource usage policy and present commitments of shares of the resource, determining whether the specified share of the resource should be committed to the requesting consumer entity; (c) if it is determined in step (b) that the specified share of the resource should be committed to the requesting consumer entity, modifying the representation of present commitments of shares of the resource to commit the specified share of the resource to the requesting consumer entity; and (d) scheduling the use of the resource by the plurality of consumer entities based on the modified representation of present commitments of shares of the resource.
-
-
44. A computer-readable medium whose contents cause a computer system to manage the use of a resource of the computer system by a plurality of consumer entities, wherein each consumer entity may request the commitment of a specified amount of the resource over a specified period of time, and wherein the method utilizes representations of present commitments of shares of the resource and present commitments of specified amounts of the resource over specified periods of time, by performing the steps of:
-
(a) receiving a request from the requesting consumer entity for a commitment of a specified amount of the resource over a specified period of time; (b) in response to step (a), modifying the representation of present commitments of specified amounts of the resource over specified periods of time to commit the specified amount of the resource to the requesting consumer entity over the specified period of time; and (c) scheduling the use of the resource by the plurality of consumer entities based both on the representation of present commitments of shares of the resource and on the modified representation of present commitments of specified amounts of the resource over specified periods of time.
-
Specification