DYNAMIC VIRTUAL RESOURCE REQUEST RATE CONTROL FOR UTILIZING PHYSICAL RESOURCES
First Claim
1. A system, comprising:
- at least one processor;
a memory, comprising program instructions that when executed by the at least one processor cause the at least one processor to implement a virtualization host for a plurality of virtual compute instances;
wherein the virtualization host is configured to;
maintain a plurality of individual virtual resource request queues for respective virtual computer resources of the plurality of virtual compute instances that utilize a physical computer resource;
implement a dynamic rate control for individual ones of the plurality of individual virtual resource request queues;
the dynamic rate control, configured to;
place a work request for a virtual computer resource of a virtual compute instance from an individual virtual resource request queue into a physical resource request queue to perform the work request at the physical computer resource;
in response to the placement of the work request;
dynamically determine a delay based, at least in part, on a workload of the physical resource request queue; and
after imposition of the delay, place a next work request from the individual virtual resource request queue into the physical resource request queue;
wherein a work request from at least one other individual virtual resource request queue of the plurality of individual virtual resource request queues is placed in the physical resource request queue during the delay.
1 Assignment
0 Petitions
Accused Products
Abstract
A virtualization host may implement dynamic virtual resource request rate controls for physical resources. Individual virtual resource request queues may be maintained for different virtual compute instances implemented at a virtualization host for a particular physical computer resource. After placing a work request from one of the individual virtual resource request queues into a physical resource request queue to be performed at the physical computer resource, a delay may be dynamically determined based, at least in part, on the workload of the physical resource request queue. After imposing the delay, a next work request from the individual virtual resource request queue may be placed into the physical resource request queue. In at least some embodiments, the dynamically determined delay may include a randomly added delay.
-
Citations
20 Claims
-
1. A system, comprising:
-
at least one processor; a memory, comprising program instructions that when executed by the at least one processor cause the at least one processor to implement a virtualization host for a plurality of virtual compute instances; wherein the virtualization host is configured to; maintain a plurality of individual virtual resource request queues for respective virtual computer resources of the plurality of virtual compute instances that utilize a physical computer resource; implement a dynamic rate control for individual ones of the plurality of individual virtual resource request queues; the dynamic rate control, configured to; place a work request for a virtual computer resource of a virtual compute instance from an individual virtual resource request queue into a physical resource request queue to perform the work request at the physical computer resource; in response to the placement of the work request; dynamically determine a delay based, at least in part, on a workload of the physical resource request queue; and after imposition of the delay, place a next work request from the individual virtual resource request queue into the physical resource request queue; wherein a work request from at least one other individual virtual resource request queue of the plurality of individual virtual resource request queues is placed in the physical resource request queue during the delay. - View Dependent Claims (2, 3, 4)
-
-
5. A method, comprising:
-
performing, by one or more computing devices that together implement a virtualization host for a plurality of virtual compute instances; placing a work request for a virtual computer resource from an individual virtual resource request queue maintained for a virtual compute instance into a physical resource request queue to perform the work request at a physical computer resource, wherein the virtual compute instance is one of the plurality virtual compute instances, wherein the individual virtual resource request queue is one of a plurality of respective individual virtual resource request queues for respective virtual computer resources including the virtual computer resource of the plurality of virtual compute instances; in response to placing the work request; dynamically determining a delay based, at least in part, on a workload of the physical resource request queue; and after imposing the delay, placing a next work request from the individual virtual resource request queue into the physical resource request queue; wherein a work request from at least one other individual virtual resource request queue of the plurality of individual virtual resource request queues is placed in the physical resource request queue during the delay. - 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 a virtualization host for a plurality of compute instances, wherein the virtualization host implements:
-
placing a work request for a virtual computer resource from an individual virtual resource request queue maintained for a virtual compute instance into a physical resource request queue to perform the work request at a physical computer resource, wherein the virtual compute instance is one of the plurality virtual compute instances, wherein the individual virtual resource request queue is one of a plurality of respective individual virtual resource request queues for respective virtual computer resources including the virtual computer resource of the plurality of virtual compute instances; in response to placing the work request; dynamically determining a delay based, at least in part, on a workload of the physical resource request queue; and after imposing the delay, placing a next work request from the individual virtual resource request queue into the physical resource request queue; wherein a work request from at least one other individual virtual resource request queue of the plurality of individual virtual resource request queues is placed in the physical resource request queue during the delay. - View Dependent Claims (15, 16, 17, 18, 19, 20)
-
Specification