ROLLING RESOURCE CREDITS FOR SCHEDULING OF VIRTUAL COMPUTER RESOURCES
First Claim
1. A system, comprising:
- a compute node, comprising at least one respective processor and a memory, that implements a virtualization host;
the virtualization host comprising executable instructions, configured to;
receive a work request for one or more central processing units (vCPUs) from a virtual compute instance;
calculate a current resource credit balance for the virtual compute instance respective to the vCPUs, wherein a resource credit accumulation rate is applied to the current resource credit balance based, at least in part, on a fixed rate for respective time periods, wherein at least one resource credit of the current resource credit balance accumulated to the current resource credit balance for a time period prior to a current time period;
generate one or more scheduling instructions in order to schedule the work request for performance utilizing the respective at least one processor of the compute node, wherein the one or more scheduling instructions are generated based, at least in part, on an application of one or more resource credits of the current resource credit balance for the virtual compute instance, wherein each of the one or more resource credits applied to the work request correspondingly increases utilization of the respective at least one processor for the current time period; and
update the current resource credit balance to deduct the one or more resource credits applied to perform the work request.
1 Assignment
0 Petitions
Accused Products
Abstract
A network-based virtual computing resource provider may offer virtual compute instances that implement rolling resource credits for scheduling virtual computing resources. Work requests for a virtual compute instance may be received at a virtualization manager. A resource credit balance may be determined for the virtual compute instance. The resource credit balance may accumulate resource credits in rolling fashion, carrying over unused credits from previous time periods. Resource credits may then be applied when generating scheduling instructions to provide to a physical resource to perform the work requests, such as a physical CPU in order to increase the utilization of the resource according to the number of credits applied. Applied resource credits may then be deducted from the credit balance.
73 Citations
20 Claims
-
1. A system, comprising:
-
a compute node, comprising at least one respective processor and a memory, that implements a virtualization host; the virtualization host comprising executable instructions, configured to; receive a work request for one or more central processing units (vCPUs) from a virtual compute instance; calculate a current resource credit balance for the virtual compute instance respective to the vCPUs, wherein a resource credit accumulation rate is applied to the current resource credit balance based, at least in part, on a fixed rate for respective time periods, wherein at least one resource credit of the current resource credit balance accumulated to the current resource credit balance for a time period prior to a current time period; generate one or more scheduling instructions in order to schedule the work request for performance utilizing the respective at least one processor of the compute node, wherein the one or more scheduling instructions are generated based, at least in part, on an application of one or more resource credits of the current resource credit balance for the virtual compute instance, wherein each of the one or more resource credits applied to the work request correspondingly increases utilization of the respective at least one processor for the current time period; and update the current resource credit balance to deduct the one or more resource credits applied to perform the work request. - View Dependent Claims (2, 3, 4)
-
-
5. A method, comprising:
performing, by one or more computing devices; receiving, at a virtualization manager for a virtualization host, a work request for one or more computer resources of a virtual compute instance hosted at the virtualization host; determining a current resource credit balance for the virtual compute instance respective to the one or more computer resources, wherein a resource credit accumulation rate is applied to the current resource credit balance based, at least in part, on a fixed rate for respective time periods, wherein at least one resource credit of the current resource credit balance accumulated to the current resource credit balance for a time period prior to a current time period; generating one or more scheduling instructions in order to schedule the work request for performance at one or more physical computer resources implemented as part of the virtualization host, wherein the one or more scheduling instructions are generated based, at least in part, on applying one or more resource credits of the current resource credit balance for the virtual compute instance, wherein each of the one or more resource credits applied to the work request correspondingly increases utilization of the one or more physical computer resources for the current time period; and updating the current resource credit balance for the virtual compute instance to deduct the one or more resource credits applied to perform the work request. - View Dependent Claims (6, 7, 8, 9, 10, 11, 12, 13)
-
14. A non-transitory, computer-readable storage medium, storing program instructions that when executed by one or more computing devices cause the one or more computing devices to implement:
-
receiving, at a virtualization manager for a virtualization host, a work request for one or more computer resources of a virtual compute instance hosted at the virtualization host; determining a current resource credit balance for the virtual compute instance respective to the one or more virtual computer resources, wherein a resource credit accumulation rate is applied to the current resource credit balance based, at least in part, on a fixed rate for respective time periods, wherein at least one resource credit of the current resource credit balance accumulated to the current resource credit balance for a time period prior to a current time period; generating one or more scheduling instructions in order to schedule the work request for performance at one or more physical computer resources implemented as part of the virtualization host, wherein the one or more scheduling instructions are generated based, at least in part, on applying one or more resource credits of the current resource credit balance for the virtual compute instance, wherein each of the one or more resource credits applied to the work request correspondingly increase utilization of the one or more physical computer resources for the current time period; and updating the current resource credit balance for the one virtual compute instance to deduct the one or more resource credits applied to perform the work request. - View Dependent Claims (15, 16, 17, 18, 19, 20)
-
Specification