Dynamic allocation of resources while considering resource reservations
First Claim
Patent Images
1. A method comprising:
- receiving, at a computing device that has a fixed amount of rate-based computing resources, indications of a plurality of tenants that are configured to request rate-based resources of the computing device, a tenant being logically isolated computer-executable code;
receiving, at the computing device, resource reservations for the plurality of tenants, the resource reservations being absolute and cumulatively greater than the fixed amount of computing resources of the computing device, a resource reservation of the resource reservations defining an amount of rate-based computing resources that is to be accessible to a tenant that has the resource reservation when the tenant requests rate-based computing resources;
receiving requests for rate-based computing resources of the computing device from tenants in the plurality of tenants; and
allocating rate-based computing resources to the tenants based upon the requests and the resource reservations for the plurality of tenants.
2 Assignments
0 Petitions
Accused Products
Abstract
Described herein are technologies relating to computing resource allocation among multiple tenants. Each tenant may have a respective absolute reservation for rate-based computing resources, which is independent of computing resource reservations of other tenants. The multiple tenants vie for the rate-based computing resources, and tasks are scheduled based upon which tenants submit the tasks and the resource reservations of such tenants.
42 Citations
20 Claims
-
1. A method comprising:
-
receiving, at a computing device that has a fixed amount of rate-based computing resources, indications of a plurality of tenants that are configured to request rate-based resources of the computing device, a tenant being logically isolated computer-executable code; receiving, at the computing device, resource reservations for the plurality of tenants, the resource reservations being absolute and cumulatively greater than the fixed amount of computing resources of the computing device, a resource reservation of the resource reservations defining an amount of rate-based computing resources that is to be accessible to a tenant that has the resource reservation when the tenant requests rate-based computing resources; receiving requests for rate-based computing resources of the computing device from tenants in the plurality of tenants; and allocating rate-based computing resources to the tenants based upon the requests and the resource reservations for the plurality of tenants. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11)
-
-
12. A computer-readable storage medium comprising instructions that, when executed by a processor, cause the processor to perform acts comprising:
-
receiving a plurality of tasks that are to be executed by a processor core, the plurality of tasks correspond to a plurality of tenants, each tenant in the plurality of tenants being computer-executable code that generates tasks, the plurality of tenants have a plurality of resource reservations that include both static and elastic resource reservations; computing resource utilizations of the plurality of tenants over metering intervals for the plurality of tenants, the metering intervals being time periods over which the resource utilizations of the plurality of tenants are computed; computing fractional deficits for the plurality of tenants based upon the resource utilizations of the plurality of tenants and the resource reservations of the plurality of tenants; selecting a task from the plurality of tasks based upon the fractional deficits; and responsive to the task being selected, executing the task.
-
-
13. A server computing device that has a fixed amount of rate-based computing resources, the server computing device comprising:
-
at least one processor core; and memory that stores instructions that, when executed by the at least one processor core, cause the at least one processor core to perform acts comprising; receiving indications of a plurality of tenants that are configured to request rate-based resources of the server computing device, a tenant being logically isolated computer-executable code; receiving resource reservations for the plurality of tenants, the resource reservations being absolute and cumulatively greater than the fixed amount of computing resources of the server computing device, a resource reservation of the resource reservations defining an amount of rate-based computing resources that is to be accessible to a tenant that has the resource reservation when the tenant requests rate-based computing resources; receiving requests for rate-based computing resources of the server computing device from tenants in the plurality of tenants; and allocating rate-based computing resources to the tenants based upon the requests and the resource reservations for the plurality of tenants. - View Dependent Claims (14, 15, 16, 17, 18, 19, 20)
-
Specification