US2017212789A1PendingUtilityA1

Allocation of processor resources in an emulated computing environment

59
Assignee: MICROSOFT TECHNOLOGY LICENSING LLCPriority: Oct 18, 2002Filed: Apr 10, 2017Published: Jul 27, 2017
Est. expiryOct 18, 2022(expired)· nominal 20-yr term from priority
G06F 2209/5014G06F 9/45558G06F 2009/4557G06F 9/5027
59
PatentIndex Score
0
Cited by
0
References
0
Claims

Abstract

In an emulated computing environment, a method is provided for allocating resources of the host computer system among multiple virtual machines resident on the host computer system. On the basis of the proportional weight of each virtual machine, a proportional share of resources is allocated for each virtual machine. If, for a particular virtual machine, the calculated share is less than a reserved minimum share, the virtual machine is allocated its reserved minimum share as its share of computing device resources. An emulation program modulates the access of each virtual machine to the resources of the host computer system.

Claims

exact text as granted — not AI-modified
What is claimed: 
     
         1 . A method for sharing processor resources among a plurality of virtual machines, comprising:
 determining, according to a capacity scheduling policy, a share of processor resources of a host computing system to be allocated to each virtual machine;   allocating to each virtual machine a corresponding share of the processor resources; and   modulating access to the processor resources among the plurality of virtual machines, enforcing utilization goals and allocation requirements among the plurality of virtual machines, and enforcing a maximum allocation on each virtual machine.   
     
     
         2 . The method of  claim 1 , further comprising:
 pausing each virtual machine for an interval to enforce the utilization goals and the allocation requirements among the plurality of virtual machines and enforce the maximum allocation on each virtual machine.   
     
     
         3 . The method of  claim 2 , further comprising:
 switching access to the processor resources between virtual machines according to an access ratio.   
     
     
         4 . The method of  claim 3 , wherein the access ratio is selected to minimize an overhead caused by switching the access to the processor resources between the virtual machines. 
     
     
         5 . The method of  claim 3 , wherein the access ratio is selected such that a minimum interval during which each virtual machine has access to the processor resources is a period of time that is sufficiently longer than an amount of time required to switch the access between virtual machines and that is less than a upper limit at which latency is not observed in operations of the virtual machines. 
     
     
         6 . The method of  claim 5 , wherein the minimum interval is at least 100 times longer than the amount of time required to switch the access between the virtual machines. 
     
     
         7 . The method of  claim 1 , wherein the determining, according to a capacity scheduling policy, a share of processor resources of a host computing system to be allocated to each virtual machine further comprises:
 determining a minimum percentage share of processor resources for at least one virtual machine among the plurality of virtual machines; and   determining a relative proportional weight for each virtual machine based on a proportional non-percentage weight assigned to each virtual machine.   
     
     
         8 . The method of  claim 7 , wherein the allocating to each virtual machine a corresponding share of the processor resources further comprises:
 allocating to the at least one virtual machine the minimum percentage share of the processor resources when the minimum percentage share is greater than a relative proportional weight for the at least one virtual machine; and   allocating to each of remaining virtual machines a corresponding share of the processor resources according to a relative proportional weight for each of remaining virtual machines.   
     
     
         9 . A system for sharing processor resources among a plurality of virtual machines, comprising:
 a processor;   a memory communicatively coupled to the processor to configure the processor at least to:
 determine, according to a capacity scheduling policy, a share of processor resources of a host computing system to be allocated to each virtual machine; 
 allocate to each virtual machine a corresponding share of the processor resources; and 
 modulate access to the processor resources among the plurality of virtual machines, enforce utilization goals and allocation requirements among the plurality of virtual machines, and enforce a maximum allocation on each virtual machine. 
   
     
     
         10 . The system of  claim 9 , the memory further configuring the processor at least to:
 pause each virtual machine for an interval to enforce the utilization goals and the allocation requirements among the plurality of virtual machines and to enforce the maximum allocation on each virtual machine.   
     
     
         11 . The system of  claim 10 , the memory further configuring the processor at least to:
 switch access to the processor resources between virtual machines according to an access ratio.   
     
     
         12 . The system of  claim 11 , wherein the access ratio is selected to minimize an overhead caused by switching the access to the processor resources between the virtual machines. 
     
     
         13 . The system of  claim 11 , wherein the access ratio is selected such that a minimum interval during which each virtual machine has access to the processor resources is a period of time that is sufficiently longer than an amount of time required to switch the access between virtual machines and that is less than a upper limit at which latency is not observed in operations of the virtual machines. 
     
     
         14 . The system of  claim 12 , wherein the minimum interval is at least 100 times longer than the amount of time required to switch the access between the virtual machines. 
     
     
         15 . The system of  claim 9 , the memory further configuring the processor at least to:
 determine a minimum percentage share of processor resources for at least one virtual machine among the plurality of virtual machines; and   determine a relative proportional weight for each virtual machine based on a proportional non-percentage weight assigned to each virtual machine.   
     
     
         16 . The system of  claim 15 , the memory further configuring the processor at least to:
 allocate to the at least one virtual machine the minimum percentage share of the processor resources when the minimum percentage share is greater than a relative proportional weight for the at least one virtual machine; and   allocate to each of remaining virtual machines a share of the processor resources according to a relative proportional weight for each of remaining virtual machines.   
     
     
         17 . A storage device excluding signals per se bearing computer-readable instructions that upon execution on a computing device cause the computing device at least to:
 determine, according to a capacity scheduling policy, a share of processor resources of a host computing system to be allocated to each virtual machine;   allocate to each virtual machine a corresponding share of the processor resources; and   modulate access to the processor resources among the plurality of virtual machines, enforce utilization goals and allocation requirements among the plurality of virtual machines, and enforce a maximum allocation on each virtual machine.   
     
     
         18 . The storage device of  claim 17 , further bearing computer-readable instructions that upon execution on the computer device cause the computing device at least to:
 pause each virtual machine for an interval to enforce the utilization goals and the allocation requirements among the plurality of virtual machines and to enforce the maximum allocation on each virtual machine.   
     
     
         19 . The storage device of  claim 18 , further bearing computer-readable instructions that upon execution on the computer device cause the computing device at least to:
 switch access to the processor resources between virtual machines according to an access ratio.   
     
     
         20 . The storage device of  claim 19 , wherein the access ratio is selected such that a minimum interval during which each virtual machine has access to the processor resources is a period of time that is sufficiently longer than an amount of time required to switch the access between virtual machines and that is less than a upper limit at which latency is not observed in operations of the virtual machines.

Cited by (0)

No later patents cite this yet.

References (0)

No backward citations on record.